- Découvrir la plateforme Node.js, comme alternative à PHP pour développer un back-end web moderne
- Savoir développer, tester et mettre en production un serveur Node.js
- Maîtriser la programmation asynchrone (callbacks, promises et async/await) et quelques fonctions incontournables fournies par Node.js: console, fs (filesystem)...
- Installer et utiliser des modules npm: express.js, node-fetch et mongo
- Savoir résoudre des problèmes techniques de manière autonome, en pratiquant une méthodologie structurante par petits groupes de travail (mob programming)
- Applications: création d’un chatbot, d'une API et d’une application web connectée à une base de données NoSQL
- Partie 1 - Chat-bot en production avec Express et Heroku
- Partie 2 - Programmation asynchrone et requête à d'autres APIs
- Partie 3 - Utilisation du système de fichiers
- Partie 4 - Persistance de données avec MongoDB
- Partie 5 - Validation, tests automatisés et intégration continue
- Partie 6 - Identification, autorisation et authentification
- Node.js + npm
git
curl
- MongoDB
Ce cours a été conçu pour des étudiants ayant déjà écrit des programmes en JavaScript, (cf cours JavaScript) et connaissant l'usage de base de git
. (cf cours git
)
Centrées sur la pratique, les séances sont majoritairement constituées d'exercices à effectuer à plusieurs (cf Mob Programming), entrecoupés d'explications données par l'intervenant. Le but est de faire vivre chaque problème aux étudiants avant de donner des explications, pour les encourager à chercher par eux-mêmes, et rendre les explications plus motivantes à suivre.
Les étudiants sont encouragés à s'entraider par l'usage d'un canal de communication partagé (ex: Slack, Mattermost ou autre). Outre l'intérêt de ne pas rester bloqué pendant des heures sur un problème, ce type de communication permet aux étudiants d'apprendre à observer la situation problématique à laquelle ils font face, de prendre le temps d'en chercher les causes potentielles, et de décrire le problème de manière synthétique mais précise. Et donc de développer à la fois leur autonomie et leur esprit d'entraide, compétences indispensables pour des développeurs professionnels.
Passionné par la programmation depuis son enfance, Adrien Joly est ingénieur logiciel depuis 2007. Il a contribué à plusieurs projets de recherche et développement (chez Gemalto, Alcatel-Lucent Bell Labs et Algolia), a dirigé le développement de la start-up Whyd dont il maintient toujours le produit (devenu "Openwhyd" en 2016), et a développé plusieurs applications web en tant que freelance et entrepreneur indépendant.
Parallèlement, et depuis 2015, Adrien donne des cours de développement logiciel dans plusieurs écoles parisiennes.
Enfin, depuis Mars 2020, Adrien propose des prestations de développement et de conseil "craft" via l'ESN "SHODO".
Pour plus d'infos, consulter ma page pro.
- JavaScript language reference - DevDocs
- Node.js API
- npm (Node Package Manager)
- MongoDB Node.JS Driver
- Heroku (Cloud hosting)
- Meetups (rencontres ouvertes) de la communauté Node.js et JavaScript à Paris:
- JS Books
- Workshops de NodeSchool:
- workshopper/learnyounode: Learn You The Node.js For Much Win! An intro to Node.js via a set of self-guided workshops.
- azat-co/expressworks: Learn Express.js from the author of one of the best books on Express.js.
- evanlucas/learnyoumongo: MongoDB workshop.
- Tutos de FreeCodeCamp:
- How to create a REST API with Express.js in Node.js - RWieruch
- Learn Node.js and MongoDB by building a URL Shortener app
- leonardomso/33-js-concepts: 📜 33 concepts every JavaScript developer should know.
- 19 ways to become a better Node.js developer in 2019
- Linting ES2015+ — ESLint with StyleGuides: Google, AirBnB, Common