IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Etudes Discussion :

Apprendre à programmer correctement en autodidacte.


Sujet :

Etudes

  1. #1
    Membre actif
    Homme Profil pro
    autodidacte
    Inscrit en
    Mars 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autodidacte

    Informations forums :
    Inscription : Mars 2013
    Messages : 33
    Par défaut Apprendre à programmer correctement en autodidacte.
    Bonjour,

    Je vous sollicite pour savoir si des personnes confirmés pourraient me dire comment apprendre à programmer correctement en autodidacte.Je veux dire me citer quelles sont les vrais bases à apprendre pour cadrer un minimum mon apprentissage autodidactique, suivre une ligne efficace qui me permettrait pas à pas d'apprendre à gérer finement les choses.

    Pour la petite histoire, j'ai toujours été attiré par les ordinateurs mais chez les copains, car dans ma famille personne ne s'intéresse à l'informatique à part moi, j'ai d'ailleurs eu mon premier ordinateur personnel à 22 ans, je me suis renseigné dans la foulée pour apprendre à programmer .

    Le problème c'est que si je dois faire un bilan de ces 3 dernière années, je me rends compte qu'apprendre en autodidacte c'est bien mais c'est l'anarchie car pas de cadre minimum, on lis des choses ici et là et on ne sais pas vraiment où on va.Je pense également que quand on est 100% débutant en programmation, commencer en premier par apprendre un langage c'est n'importe quoi, ça doit être à mon sens la dernière des choses, vous apprenez en quelques sorte des recettes toutes faites que vous répliqué mais pour faire de l'orfèvrerie et maîtriser réellement le fond des choses, il n'y a plus personne.

    Voilà, si des personnes confirmés pourrait me citer des cours pour apprendre les vrais bases qui permettent de devenir un programmeur qui sait ce qu'il fait

    Désolé pour cette petite parenthèse et merci.

  2. #2
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2012
    Messages
    3 020
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2012
    Messages : 3 020
    Par défaut
    Salut,

    Les cours te donnent des bases pour aller plus loin. Mais toi seul peut avoir la démarche d'aller plus loin.

    Il n'y a pas de "cours" ou de "recette" pour devenir expert. Que l'expérience.

    Tu as pas mal de cours à disposition sur ce site. Dans différents langages. Le mieux, à mon sens, est de les suivre pour apprendre les bases, puis de te lancer des des petits projets persos pour mettre en application et dépasser un peu le cadre théorique.

    Pour les bonnes pratiques, c'est plus difficile, parce que d'une part il n'y a pas ou peu de norme incontestable et incontestée sur le sujet. Le "mieux" que tu puisses faire, c'est par exemple de prendre l'habitude d'utiliser Checkstyle ou PMD pour "valider" ton code et éviter les mauvaises pratiques les plus courantes.

    Cela ne t'aidera pas sur l'architecture ou sur l'algorithmie, mais au moins sur la lisibilité et la maintenabilité de ton code.

    Et pour les questions spécifiques sur le langage de ton choix, tu as aussi le forum ici avec ses sections par langage.

    Donc pas de secret, de l'huile de coude, de la volonté et des efforts pourront te permettre de savoir et maitriser ce que tu fais. Devenir développeur et en vivre, c'est une autre histoire.

  3. #3
    Membre actif
    Homme Profil pro
    autodidacte
    Inscrit en
    Mars 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autodidacte

    Informations forums :
    Inscription : Mars 2013
    Messages : 33
    Par défaut
    En faite je me suis rendu compte qu'apprendre un langage de haut niveau pour créer une application ne m'intéresse pas car pour le moment pas d'idée de programme et il y en a déjà assez comme ça de toute façon.De plus ce n'est pas dans l'intérêt de la maîtrise que tout soit cachée ou prémâché.

    Ce qui m'intéresse pour être plus précis, c'est d'apprendre à toucher des choses de couches beaucoup plus basses.Mais par quoi commencer pour ne pas s'éparpiller, dans quel ordre ?.

  4. #4
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2012
    Messages
    3 020
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2012
    Messages : 3 020
    Par défaut
    Tu n'es pas précis du tout en fait.

    C'est quoi pour toi "bas niveau"? Par exemple, tu aimerais faire quoi?

    Parce que encore une fois, si tu veux progresser, un projet perso, c'est un bon début. Oui, il y a surement des gens qui ont déjà fait bien mieux que ce que tu feras. Mais si ton but est purement pédagogique, ça à du sens.

  5. #5
    Membre actif
    Homme Profil pro
    autodidacte
    Inscrit en
    Mars 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autodidacte

    Informations forums :
    Inscription : Mars 2013
    Messages : 33
    Par défaut
    Toucher aux premières couches en accès direct avec le matériel,ect,ect.Ce serai plus pédagogique pour moi comme cours, afin de mieux comprendre comment sont traités les données entre code et matériel.

    Il faut commencer par quoi, de l'électricité ? assembleur ? mathématiques ? autres ? des cours à me conseiller ?

    J'aimerais avoir votre avis avant d'attaquer un pavé de 2000 pages à droite ou à gauche, choisis par pur hasard.

    Merci.

  6. #6
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut
    Si c'est purement par passion tu peux commencer par ce que tu veux. Même si en électricité tu vas pas coder grand chose d’intéressant je pense. .

    En bas niveau, tu as l'assembleur si c'est par passion, le C si tu veux un peu plus te professionnaliser. (Enfin je dis ça, mais moi je suis plutôt haut niveau, alors je suis sur que des gens vous trouver que le C c'est déjà tu trop haut niveau.)

    Ensuite comment apprendre en autodidacte. Outre les tuto internet je te conseillerai d'acheter un livre sur la techno que tu veut pratiquer. Il à vraiment une mine d'information dans les livre de programmation qu'on trouve que très durement ailleurs. (Suffit de comparer un livre C#, avec un tutoriel C# pour se rendre compte que les objectif ne sont pas les même).

    Ensuite oui, faire des projet, ou faire des algo quand on à pas d'idée de projet, encore et encore est la seule façon de progresser en programmation.
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  7. #7
    Membre actif
    Homme Profil pro
    autodidacte
    Inscrit en
    Mars 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autodidacte

    Informations forums :
    Inscription : Mars 2013
    Messages : 33
    Par défaut
    Effectivement c'est par passion dans mon temps libre, je n'ai donc pas les contraintes de l'entreprise en terme de temps,finance,ect,ect.

    Pour les livres, je vais regarder en plus ça me permettras d'avoir moins mal aux yeux par rapport à la lecture sur écran.

    Merci.

  8. #8
    Rédacteur

    Homme Profil pro
    Expert iOS
    Inscrit en
    Juin 2005
    Messages
    413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Expert iOS

    Informations forums :
    Inscription : Juin 2005
    Messages : 413
    Billets dans le blog
    1
    Par défaut
    Salut,

    Le mieux pour toi, à mon avis, c'est le K&R --> http://www.eyrolles.com/Informatique...-9782100487349

    C'est la bible du C, suis le livre scrupuleusement chapitre par chapitre. Tu acquerras de bonnes bases en programmation et c'est du bas niveau, du C, bref le mieux pour comprendre véritablement ce qu'on fait et vu que c'est apparemment ton intention de faire de la programmation bas niveau ça semble le plus adapté pour répondre à ta demande.

  9. #9
    Membre Expert
    Homme Profil pro
    Dev senior .Net, (ex-immigré français au Québec)
    Inscrit en
    Janvier 2006
    Messages
    727
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Dev senior .Net, (ex-immigré français au Québec)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 727
    Par défaut
    Citation Envoyé par chiv Voir le message
    C'est la bible du C, suis le livre scrupuleusement chapitre par chapitre. Tu acquerras de bonnes bases en programmation et c'est du bas niveau, du C, bref le mieux pour comprendre véritablement ce qu'on fait et vu que c'est apparemment ton intention de faire de la programmation bas niveau ça semble le plus adapté pour répondre à ta demande.
    Je suis paas certain que le K&R soit si bon que ca pour "Apprendre a programmer correctement".

    Okay, ca va lui apprendre pleins de trucs techniques (et d'abord les pointeurs), mais ca va pas lui apprendre a organiser son code correctement, utiliser (enfin, surtout pourquoi) un controle de version, etc...

    A devenir un "orfevre" comme il le dit lui meme.. Pour cela, je lui conseillerai plutot Pragmatic Programmer, ou Clean Code (je ne sais pas s'il y a des traductions)...

    Une autre bonne facon d'apprendre, c'est de mettre les mains dans le cambouis, se planter, refaire un programme... et aussi d'échanger avec des gens de qualité

  10. #10
    Rédacteur

    Homme Profil pro
    Expert iOS
    Inscrit en
    Juin 2005
    Messages
    413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Expert iOS

    Informations forums :
    Inscription : Juin 2005
    Messages : 413
    Billets dans le blog
    1
    Par défaut
    Oui c'est sûr qu'utiliser un gestionnaire de version c'est la grosse priorité quand on apprend à programmer tout seul en autodidacte. Tout le monde sait que paramétrer git est le plus important pour coder correctement. Alors que les pointeurs, les variables, le typage, les boucles, les entrées-sorties, la gestion de la mémoire, les processus, les threads et toutes ces bêtises, c'est secondaire.

  11. #11
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Par défaut
    Vous avez raison tous les deux.
    Mais GuillaumeJ, avant d'apprendre les bonnes pratiques de la programmation en équipe, il faut déjà savoir les bases que donnent chiv!
    Chaque chose en son temps. au début on fait quelque chose qui marche, puis après on fait quelque qui marche et d'un peu mieux architecturé, ...

  12. #12
    Membre Expert
    Homme Profil pro
    Dev senior .Net, (ex-immigré français au Québec)
    Inscrit en
    Janvier 2006
    Messages
    727
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Dev senior .Net, (ex-immigré français au Québec)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 727
    Par défaut
    Citation Envoyé par deathness Voir le message
    Mais GuillaumeJ, avant d'apprendre les bonnes pratiques de la programmation en équipe, il faut déjà savoir les bases que donnent chiv!
    Chaque chose en son temps. au début on fait quelque chose qui marche, puis après on fait quelque qui marche et d'un peu mieux architecturé, ...
    Sauf que n'importe quel autodidacte avec un QI moyen va savoir faire quelque chose qui marche, comme n'importe qui sortant de quelques heures de cours.

    La qualité de l'architecture - au sens très large, de l'écriture de code maintenable a la bonne utilisation/importance des outils - c'est cela qui fait l'orfèvre (je reprends ce terme, qui me parait une très bonne traduction de la notion de Craftsman).

    Je ne serais pour ma part pas vraiment impressionné par quelqu un qui peut écrire une liste doublement chainée, mais dont la stratégie de contrôle de source consiste a copier ses fichiers en les suffixant de "_save01"...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Apprendre à programmer avec Python exercices 4.2
    Par bellamy dans le forum Général Python
    Réponses: 5
    Dernier message: 15/10/2009, 14h53
  2. Apprendre à programmer en JAVA
    Par kromartien dans le forum Débuter avec Java
    Réponses: 8
    Dernier message: 21/04/2008, 18h29
  3. Apprendre à programmer un système d'exploitation : avec quel langage ?
    Par overon dans le forum Langages de programmation
    Réponses: 107
    Dernier message: 27/08/2007, 09h46
  4. Réponses: 2
    Dernier message: 25/02/2005, 17h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo