web-dev-qa-db-fra.com

Combien de temps faut-il pour apprendre Java pour un débutant complet?

Je n'ai absolument aucune expérience en programmation, mais j'ai besoin d'apprendre Java, suffisamment pour pouvoir suivre un cours J2ME Fasttrack. Je n'ai que 10 semaines. Puis-je faire ceci? Quel est votre conseil sur les meilleures ressources que je peux utiliser (actuellement avec les didacticiels Java de Sun). 

25
semba

10 semaines? Apparemment, vous pouvez le faire en 24 heures!

http://www.Amazon.com/Sams-Teach-Yourself-Programming-Hours/dp/0672328445

MODIFIER:

D'accord, donc une seule personne a trouvé ma réponse amusante, mais pas assez amusante pour que le vote soit positif. La vraie question est de savoir à quel point vous devez être bon dans 10 semaines.

Si vous vous procurez un bon livre (celui cité ci-dessus contient de bonnes critiques sur Amazon), dans 10 semaines, vous serez peut-être suffisamment compétent pour faire quelque chose d'utile en Java, mais il faut des années pour devenir expert. Tout le temps passé entre 10 semaines et plusieurs années vous passera de débutant à expert.

Oh et lisez Apprenez à programmer en dix ans .

52
Patrick McDonald

D'accord, sur la base de certaines des réponses précédentes, je m'attends à un vote négatif pour cela, mais je pense que vous êtes illusoire de penser que vous pouvez apprendre vous-même comment programmer en Java en 10 semaines sans expérience en programmation. Aucune personne, avec une expérience de programmation de NO, autre qu'un prodige, ne pourra apprendre à programmer en Java ou dans n’importe quel langage dans 10 semaines.

Pour plus de clarté, copier et exécuter hello world depuis un livre ne fait pas de vous un programmeur. Enfer, il faudra probablement des jours pour que cela fonctionne dans une IDE.

Maintenant, pouvez-vous étudier et éventuellement passer un test? Peut-être, mais cela dépend de la profondeur et du format du test.

Si je demandais si je pouvais devenir médecin dans 10 semaines, on me moquerait de demander, alors je suis un peu surpris des réponses qui indiquent que c'est un peu possible. Je peux maintenant coller un pansement sur ma fille, mais cela ne fait pas de moi un professionnel de la santé, cela signifie simplement que j'ai géré leur version de hello world.

25
Robin

La principale question est de savoir si vous avez déjà réalisé une programmation, ce qui pourrait être l'effort principal. Je soupçonne que si vous ne l’avez pas fait, vous pourriez vous en sortir, mais pas nécessairement réussir. Vous indiquez que vous n’avez aucune expérience en programmation, c’est donc à cet endroit que vous allez avoir le plus de problèmes et passer plus de temps. Java ne serait pas nécessairement plus rapide ou plus lent à apprendre que d'autres langages similaires. 

Les tutoriels Java de Sun sont excellents, mais malheureusement, la programmation est l’une des choses où la pratique est nécessaire, et cela dépend de votre temps libre. Il est également nécessaire de s'arrêter et de pratiquer fréquemment plutôt qu'après avoir lu la moitié d'un livre. Si vous avez consacré 10 semaines à plein temps - oui, c'est tout à fait faisable pour certaines personnes . Après tout, les étudiants deviennent des développeurs passables en une année académique où ils suivent d'autres cours. 

Je me concentrerais sur la résolution complète de Java sans essayer d’utiliser J2ME. Ensuite, vous pouvez faire le changement.

De plus, sachez qu’il existe une grande différence entre le langage et la bibliothèque standard. L'important est d'apprendre la langue. Il existe certains appels de bibliothèque standard que tout le monde utilise et qu'il est essentiel d'apprendre, mais ils ne font pas partie du langage. Cependant, vous ne saurez jamais vraiment toute la bibliothèque (bien que vous appreniez de l'expérience). Il est plus important d'apprendre comment trouver la fonctionnalité que vous recherchez que de savoir exactement de quoi il s'agit ou où le trouver. L'important est d'éviter de réinventer la roue. 

En outre, sachez que vous ne pouvez être qu’un développeur passable à la fin. L'expérience prend du temps et ne peut souvent pas être accélérée. 

En outre, même si vous apprenez à programmer, vous manquerez certaines connaissances critiques générales de CS telles que les structures de données et les algorithmes. Les livres de programmation enseignent rarement cela, vous devrez l'apprendre vous-même (voir, par exemple, les tutoriels de TopCoder).

24
Uri

D'accord, il y a beaucoup de gens ici qui disent "oui" et "oui, mais ce sera difficile", donc je vais différer.

Non.

Le problème n’est pas «d’apprentissage de Java» dans 10 semaines, car je pense qu’au bout de 10 semaines, vous serez en mesure de programmer certaines choses et d’avoir une idée de ce qu’il faut faire pour résoudre des choses simples.

Mais cela ne vous préparera pas pour un parcours accéléré J2ME. Les cours accélérés ont tendance à être destinés aux personnes ayant de solides antécédents dans les préalables. Vous pourriez être en mesure de faire beaucoup de choses au fur et à mesure que vous avancez, mais sans le fond pour comprendre le pourquoiles choses semi-aléatoires à mémoriser par cœur, et vont probablement disparaître rapidement.

Fondamentalement, je pense que cela prend juste du temps: il faut du temps pour laisser les leçons entrer, du temps pour expérimenter et échouer plusieurs fois pour que le pourquoi vous saute aux yeux ...

En fin de compte, je suppose que vous pourriez vous en sortir, mais que vous ne finiriez pas du tout avec beaucoup de compétence. (Les deux derniers paragraphes de l'article d'Uri disent tout.)

Je ne veux pas être complètement déprimé, et je vous donne bien espoir vous réussissez et vous réussissez ... mais je détesterais miser de l'argent dessus. 

(Comprenez, je ne vous connais pas depuis Adam ... alors je fais des déclarations sur la base de mon expérience de ce que j'ai vécu pour moi et des gens avec qui j'ai travaillé ... alors ce n'est pas un reproche que je ferais à votre égard. ... juste une observation qu'il s'agit d'un très grand repas que vous vous préparez à manger.)

15
Beska

Apprendre à programmer pour la première fois, c'est un peu comme apprendre une langue étrangère. Vous serez facilement en mesure de recréer les phrases que vous avez apprises, mais vous ne comprendrez pas le contexte pour lequel cela est fait, et serez donc incapable de résoudre efficacement de nouveaux problèmes. Cela prend simplement du temps. 

Si vous êtes programmeur pour la première fois, je ne peux vraiment pas recommander Java. Python serait bien meilleur (avertissement: fan de Python, mais pour de bonnes raisons). 

Cependant, je ne pense pas qu'un débutant puisse faire beaucoup mieux que Head First Java

5
ShawnMilo

J'enseigne la programmation Java dans une école secondaire. Notre cours dure 14 semaines. C'est assez de temps pour donner aux étudiants une base solide en programmation orientée objet, mais les étudiants ne sont pas assez expérimentés pour développer de grands projets ou quelque chose de trop compliqué.

De nombreuses écoles utilisent le manuel de Lambert & Osbborne:

Lambert, K. & Osborne, M. Principes de base de Java: Les bases de l'informatique pour les examens AP. 3ème éd. 2006. Thomson Course Technology.

4
bestattendance

Le principal problème que vous rencontrez est que vous apprenez à programmer pour la première fois avec Java et je pense que Java n'est pas le meilleur langage pour commencer. 

Je suppose que vous abordez un projet de travail, est-ce le cas? Cette pression pourrait aggraver les choses. En fonction de la complexité du projet, vous pourriez réussir, mais l'apprentissage de Java en 10 semaines sans connaissances préalables est un autre problème.

3
ivmos

Je dois dire que vous avez beaucoup travaillé en seulement 10 semaines. Je viens de terminer un semestre de programmation Java à Indiana University Southeast, et je ne pense pas avoir commencé à gratter la surface pour le moment. Java est un langage très strict en ce sens que sa syntaxe est très difficile à maîtriser si vous n’avez aucune expérience en programmation. Je vais offrir ces conseils sur www.bluej.org et télécharger le compilateur Java, il est dit qu'il est le plus facile à utiliser et que la plupart des collèges l'utilisent. C'est aussi ce que nous avons appris et ce que je sais maintenant, je peux le dire, ils ont raison. Java est un langage orienté objet et Bluej vous donne une grande compréhension des objets. Ils vous montrent également comment concevoir, classes, méthodes, tableau, liste de tableaux, cartes de hachage, tout cela se trouve sur ce site et il est gratuit. J'espère que cela aide et bonne chance avec votre défi.

2
kennethfsk

Je suis un étudiant en informatique qui vient de terminer mon premier cours sur Java. Je dirais qu'il est possible d'apprendre Java sur 10 semaines si vous travaillez dur. Mais vous n'aurez qu'une intro! La programmation est bien plus que la simple connaissance du langage (API, syntaxe, etc.).

Meilleur livre Java jamais publié: http://www.Amazon.com/Introduction-Java-Programming-Comprehensive-Version/dp/0136012671/ref=sr_1_1?ie=UTF8&s=books&qid=1242328533&sr=8-1

2
Johannes

Cela dépend de la difficulté avec laquelle vous voulez travailler, mais oui, c'est possible. Le problème que vous allez avoir, c'est que vous devez apprendre à programmer parallèlement à l'apprentissage de Java. Ce sont deux choses très différentes. Programmer, c'est savoir lire et écrire la logique et Java est un langage dans lequel vous l'écrivez. Si vous avez une formation en mathématiques ou en physique, cela sera beaucoup plus facile, car vous êtes déjà exposé à la pensée de cette manière. 

Si vous n'avez pas de livres sur Java, je vais en acheter un. 

Je prendrais aussi le livre Code (j'essaierais de résoudre ce problème quelques jours plus tard, voire le week-end si possible). En fait, avec 10 semaines, je commencerais par le faire, car ce sera une base pour ce que vous devez savoir pour programmer Java. 

Avec 10 semaines, vous allez devoir étudier à peu près tous les soirs pour bien comprendre le mouvement avant d'aller en classe. Le meilleur conseil que je puisse vous donner est que, lorsque vous suivez le cours, prenez beaucoup de notes et ne vous attendez pas à tout comprendre. La plupart de ce qui se jette sur vous y passera probablement par-dessus la tête au début et vous oublierez. C'est bon. Après le cours, si vous avez terminé, revenez en arrière et examinez les notes, etc., jusqu'à ce que cela commence à avoir un sens. 

2
kemiller2002

Il existe différentes écoles de pensée concernant le temps dont vous avez besoin pour devenir un expert en programmation. Je ne vais pas en rajouter… Je suggère que si vous n'avez absolument aucune expérience en programmation, commencez par apprendre le langage C Puis déplacez-vous vers Java ... Le site suivant est très utile pour apprendre Java . http://www.javapassion.com

2
Christy John

J'ai travaillé avec des programmeurs autodidactes qui lisaient des choses comme "apprendre le javascript dans 0.01 jours". Chaque jour valait sa part de thedailywtf.com .

En outre, lors d'une entrevue d'emploi, on vous demande "combien d'expérience javascript avez-vous?", Votre réponse "0,01 jour".

alors bonne chance mais j'espère que notre chemin ne se croisera pas avant quelques années

1
Eric

Je n'avais aucune formation en programmation et je voulais apprendre PHP. Il m'a fallu environ 6 mois de pratique en plus de mon travail habituel pour développer suffisamment mes compétences pour écrire de simples applications pour un site Web. Java est un peu plus complexe ...

1
Dan

Pour Java, vous devez également apprendre à utiliser un IDE et configurer votre environnement, et ainsi de suite pour que Java fonctionne ...

Ensuite, pour J2ME, vous devez être au courant des systèmes embarqués/mobiles ....

10 semaines avec les tutoriels sont acceptables, mais cela dépend aussi de ce que vous allez faire dans votre cours j2me ...

Je voudrais aller tête première dans un tutoriel j2me (en supposant que vous connaissez un minimum concernant les fonctions variables et OO) ...

bonne chance...

1
LB40

Je peux compatir ... ayant déjà vécu une situation semblable, même si j'avais au moins quelques antécédents. Je suis d'accord avec @ShawnMilo en ce qui concerne Head Fist Java . Recommandez également Sams Teach Yourself Java in 21 Days et, étant donné que vous n’avez aucune connaissance en programmation, je vous encourage vivement à consulter Le processus de pensée orientée vers l’objet de Matt Weisfeld. Je suis également d'accord avec tous les participants sur ce fil qui disent qu'il y a beaucoup plus de choses à programmer que «simplement» apprendre un seul langage (surtout s'il s'agit de Java). Cela dit, bonne chance et bonne vitesse.

PS: +1 @ Patrick McDonald pour le sens de l'humour, mais je n'ai pas assez de représentant!

PPS Et un autre +1 virtuel pour @Robin. Je me demandais quand les Quatre Yorkshiremen entreraient sur ce fil ...

1
avstrallen

Le meilleur conseil pour apprendre à programmer est fondamentalement: écrivez beaucoup de programmes. 

Project Euler contient de nombreux problèmes bien adaptés à cet objectif, car la taille des programmes résultants est gérable tout en vous permettant de résoudre un problème explicite.

http://projecteuler.net/index.php

Mon expérience de la programmation Java pour débutant n’est pas difficile à apprendre; Cependant, cela dépend vraiment de vos compétences en programmation orientée objet. Comme vous dites que vous n’avez aucune expérience en programmation, je suppose que je recommande un site Web, http://www.exampledepot.com/ , et que vous tapez un mot clé Java tel que Swing, FileInputStream, exemples pratiques que vous pouvez appliquer à un projet. 

Veuillez acheter un livre Java (Sams'Java 6 en 24 heures) comme référence. Cela vous donnera des compétences de base pour Java en peu de temps. et je suis sûr que vous aurez assez de temps pour en apprendre davantage sur Java et J2ME d’ici 10 semaines. Bonne chance.

Tigre

1
Tiger

Je ne dirais pas que je n'avais "aucune expérience en programmation", mais avant d'apprendre J2ME, la plupart de ce que j'avais fait était dans l'assembleur plus de 10 ans auparavant.

J'ai ignoré l'apprentissage de "Java" et appris J2ME, qui semble être un petit sous-ensemble de Java. Il est suffisamment petit (si vous ignorez les extensions) pour que ce soit très digeste et facile à expliquer dans un livre de taille moyenne. De ce point de vue, c'était un peu comme un assembleur (un peu de choses à savoir), même si j'avais besoin d'en savoir plus sur la programmation orientée objet.

J'ai acheté quelques livres J2ME, mais celui que j'ai trouvé le plus utile était: "Programmation de périphériques sans fil avec la plate-forme Java 2" de Riggs, et al.

Je ne me souviens pas exactement combien de temps cela m'a pris, mais je suis à peu près sûr que j'écrivais du code déployable (il s'agissait d'une application de feuille de temps mobile) en 12 semaines environ.

1
Cliff Brown

Faisable, oui. Mais vous auriez manqué beaucoup de théorie derrière la programmation, alors même si vous connaissez suffisamment le langage pour le coder, vous ne saurez pas comment programmer correctement. Je suggère de prendre quelques livres pour débutants sur la conception orientée objet pendant que vous y êtes. Les meilleurs outils (au moins pour moi) d’enseignement et d’aide pour une nouvelle langue sont des tutoriels et des forums comme celui-ci (n'oubliez pas de commencer par Google, il existe de nombreuses questions pour débutants qui sont répondues par une simple recherche).

Bonne chance!

1
Fry

Vous pouvez certainement avoir une bonne compréhension de Java en 10 semaines, mais comme mentionné précédemment, la pratique rend parfait (ou du moins meilleur ...). Quelques lieux de départ:

L'API Java sera votre ami: http://Java.Sun.com/j2se/1.5.0/docs/api/

Java a beaucoup de fonctionnalités intégrées alors essayez de ne pas les dupliquer (fonctions String et autres).

En outre, un IDE pourrait compliquer un peu les choses, mais cela vous aidera également à vous repérer dans l'API. Eclipse est un bon endroit pour commencer (et c'est gratuit) http://www.Eclipse.org/

J'espère que ça aide un peu..

1
newfie_coder

Pouvez-vous apprendre à dessiner, sculpter ou peindre en dix semaines? Tout le monde peut apprendre à presser les touches du programme, comme tout le monde peut prendre un pinceau, mais il faut du temps et du talent pour cultiver l’art de développer . Faites-vous une faveur et consacrez temps et efforts à apprendre , pas entasser . Les leçons que vous apprendrez grâce à un effort concerté pour savoir comment développer vous serviront beaucoup mieux que de miser dessus pour respecter une date arbitraire.

1
Wayne Hartman

Comme d'autres l'ont mentionné, 10 semaines devraient suffire si vous avez une formation en programmation informatique.

Plus près de 6-8 semaines, si vous êtes Jeff Atwood.

0
Jack Leow

Je ne vois pas pourquoi tu ne pouvais pas le faire. Je suis un passionné de livres, alors choisissez un livre et parcourez-le. Mettre en place des petits projets et les terminer. 10 semaines sont plus longues que d'habitude alors j'apprends une nouvelle langue.

Amusez-vous et espérons que vous apprendrez beaucoup.

Je publierais les livres avec lesquels j'ai appris Java, mais ils sont à la maison et moi non.

0
Primetime

10 semaines? Êtes-vous fou? l’API Java est énorme, sans parler de Java EE, comment pourrait-il s’en sortir en 10 semaines? vous pourriez peut-être atteindre 5% de ce montant en quelques mois. Je dirais qu'il faudrait au moins un an pour apprêter les principes fondamentaux de Java pour les débutants. Je veux dire que vous ne pouvez pas simplement lire un chapitre sur un sujet et penser ensuite que vous le comprenez. Vous devez passer beaucoup de temps à utiliser ce concept ou cette partie de l'API pour au moins l'enregistrer dans la mémoire, sans oublier de bien le saisir.

En réalité, je dirais au moins deux, voire trois ans de programmation pour atteindre le niveau d'entrée de l'industrie. Et c'est si vous vous appliquez vraiment.

0
ally