Skip to content

Plan de préparation à la formation de Concepteur Développeur Informatique de Human Booster

License

Notifications You must be signed in to change notification settings

davidpdd/hb-cdi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 

Repository files navigation

Human Booster - Concepteur Développeur Informatique

Plan de préparation à la formation de Concepteur Développeur Informatique de Human Booster

Fruit d'un projet Agenda 21, ce plan de préparation est écrit par les anciens stagiaires pour les aspirants stagiaires et mis à jour petit a petit. Son but est de partager les sources nécessaires afin d'aborder la formation le plus sereinement possible.

Bonne chance!

Avant de commencer

Pas de technique ici mais des fondamentaux pour optimiser et accélérer son apprentissage.

Bon à savoir

  • Abonnement Premium OpenClassrooms : l'abonnement premium (vidéos explicatives à la place du texte) est offert sur le site en renseignant son identifiant pôle emploi (pratique)
  • JetBrains Student Licence (IDE) : JetBrains est à l'origine de PhpStorm utilisé plus tard dans la formation, mais également d'IntelliJ que vous pouvez utilisez en Java. Une licence d'un an pour le pack Ultimate peut vous être offerte si vous en faites la demande sur leur site en leur fournissant votre attestation d'entrée en formation (onglet 'Official Document').

Anglais

Indispensable pour être rapide et efficace. Dans la mesure où un programmeur passe plus de temps sur Google et Stack Overflow que dans son éditeur, faire ses recherches en français c'est un peu comme manger sa soupe avec une fourchette. Ca marche, mais ça prend du temps. Alors rends-toi service et apprend au moins les bases ;)

Apprendre à apprendre

Parce qu'apprendre sans savoir comment apprendre, c'est un peu dommage.

  • Learning How To Learn - Coursera
    En tête des cours les plus populaires de Coursera. HOT HOT

  • Anki - Web, Android, iOS($$)
    Application utilisant le principe des flashcards pour renforcer l'apprentissage par la répétition. Possibilité d'importer des decks ou de créer les siens.

Dactylographie

Pour passer moins de temps à chercher les touches de son clavier et plus de temps à trouver le nom parfait pour sa variable. 20 minutes par jour pendant 30 jours. Recommandé par l'association des gens qui tapent avec plus de deux doigts.

A faire

Toute la formation est centrée sur la conception orientée objet (COO). On vous dira souvent que plus on avance, moins c'est difficile, mais c'est tout simplement que plus vite on comprend les concepts de COO, plus c'est facile d'aborder de nouveaux langages ou frameworks. Attaquer la formation sans connaître ces principes là c'est se tirer un balle dans le pieds avant même d'avoir commencé.

  • Initiation à la programmation (Java) Coursera (Polytech Lausanne) 🇫🇷
    L'un des rares cours en ligne disponible en français expliquant les bases de la programmation. Conditions, boucles, tableaux et fonctions. La base de la base.

  • Introduction à la programmation orientée objet Coursera (Polytech Lausanne) 🇫🇷

  • UML(Unified Modeling Language) Fait également partie des bases à connaitre. C'est un très bon moyen de communiquer et permet également de bien appréhender les concepts de la programmation orientée objet. Demandez le dépliant de Pascal, l’essentiel y est inscrit. Pour les 90% restant, allez sur internet.

Pour être un peu plus à l'aise

Initiation à la programmation

  • CS50 : Introduction to Computer Science edX (Harvard University)
    De loin le cours le plus recommandé pour s'initier à la programmation. C, Python, Web, JavasScript, SQL... Tout ce qu'il faut pour construire des bases solides. Est-ce que c'est facile? Non. Est-ce que je peux le faire en moins d'un mois? Probablement pas. Est-ce que ça va m'aider à mieux comprendre la programmation? ABSOLUMENT!
  • CS50 : Understanding Technology edX (Harvard University)
    Spécifiquement pensé pour être un premier contact avec le monde de la technologie. Parfait pour les personnes pas vraiment à l'aise avec l'informatique.
  • Object Oriented Design Coursera Se concentrer sur les cours. Les exos sont plutôt hardcore

Algorithmie

  • Scratch Idéal si l'on veut s'attaquer à la logique de la programmation sans passer par un langage spécifique. Développé par MIT, il est utilisé dans les universités americaines comme introduction à la programmation.
  • Blocky Games - 🇫🇷 Dans la même veine que Scratch, mais en français.
  • Hackerrank
    Challenges en ligne, difficulté croissante. Un très bon moyen d'apprendre les bases de l'algorithmie en Java en pratiquant.
  • Codewars Même principe que Hackerrank. On choisit un langage et on résout des problèmes pour monter en grades. Ludique et efficace.
  • Coding Games Toujours de l'algo mais cette fois-ci, dans l'univers du jeu. Plein de langages supportés.

Java

  • Apprendre le Java avec Graven Youtube - 🇫🇷
    Graven est un Youtubeur qui vous guidera pas à pas en une dizaine de vidéos sur les choses importantes que vous allez traiter rapidement au début de la formation sur Java (au moins jusqu'à la vidéo #10)
  • La Javadoc OpenClassrooms - 🇫🇷 C'est là qu'on commence à faire la différence entre les bons développeurs et les très bons développeurs.

HTML - CSS

  • Apprendre à créer vos site web avec HTML5 et CSS3 OpenClassrooms - 🇫🇷
    Petit cours initiatique au langage web basique (HTML) et les feuilles de styles associées (CSS). Certes après vous ne coderez pas la nasa, mais il donne de bonnes bases pour comprendre et continuer à apprendre.
  • W3 School Souvent en tête des résultats Google et on comprend pourquoi. On y trouver toute la doc et plein de tutoriels.
  • Bootstrap Incontournable dès lors que l'on veut créer de belles choses rapidement. Ca vaut le coup de jeter un oeil aux différents composants et de s'amuser avec. La documentation est très bien fournie. C'est également super simple de piquer des bouts de code pour les adapter à ce que l'on veut faire.

Outils de développement

Que ferait un boucher sans ses couteaux ou un forgeron sans ses marteaux? Pas grand chose. A chacun son style, l'important c'est d'être à l'aise. Un conseil, apprendre les raccourcis les plus courants. Mine de rien, ça fait gagner pas mal de temps au bout du compte.

IDE

La formation se fait sur Eclipse pour la partie Java et sur PhpStorm pour la partie PHP (duh). Ceux qui comment sur IntelliJ auront une longeur d'avance car JetBrains, l'éditeur d'IntelliJ, fait également PhpStorm et AndroidStudio est basé sur IntelliJ. Avis aux debrouillards, en cas de pépin sur IntelliJ, vous serez seuls dans votre misère.

  • Eclipse (par défaut) : pour ceux qui aiment se prendre la tête en groupe
  • IntelliJ : pour ceux qui aiment se débrouiller. En bonus, on peut béneficier du pack Ultimate gratuitement pendant un an en envoyant son attestation d'entrée en formation.

OS

  • Windows : installé par défaut sur les machines de formation
  • Linux : pour ceux qui veulent que ça fonctionne et souhaitent savoir pourquoi
  • MacOS : pour les autres

Git/Github

Indispensable si l'on veut avoir un minimum de crédibilité. Au delà de ça, c'est un outil formidable. L'apprentissage est un peu pénible mais tellement gratifiant. En ligne de commande, c'est mieux. Attention à bien se renseigner avant de copier bêtement des commandes trouvée sur StackOverflow genre git clean...

Pour prendre de l'avance

MySQL

  • sql.sh Des tutoriaux complets sur les lignes de commandes à effectuer selon le cas voulu, c'est très complet.

JSP

  • StackOverflow Un problème? Stack Overflow pourra vous aider, car dans ce monde au moins une personne aura eu le même problème que vous.

Le web en Java (JSP/JSTL)

Maven

JSF

  • StackOverflow/jsf Encore un problème? Stack Overflow est encore là. S'il n'y a pas de solutions, c'est qu'il n'y a pas de problème.

Hibernate

Spring

PHP/Symfony

Pour aller plus loin

Who are you kidding...

About

Plan de préparation à la formation de Concepteur Développeur Informatique de Human Booster

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published