Un livre pour apprendre JavaScript

⚠ Attention: Vous avez été nombreux à acheter, lire et aimer ce livre et je vous en remercie. Cependant, aujourd'hui, ce dernier n'est plus aussi pertinent et n'a pas été actualisé. Je vous recommande donc si vous cherchez un livre sur JavaScript de vous orienter vers une édition plus récente, voire même de profiter plutôt des nombreuses ressources en ligne qui peuvent être plus facilement mises au goût du jour.

En Avril 2013 j'ai été contacté par MA-Édition pour écrire un livre sur JavaScript. Aujourd'hui, il est en librairie. Retour sur cette belle aventure.

À vrai dire, avant d'accepter, j'ai voulu m'assurer d'avoir suffisamment la fibre pour rédiger un livre complet. C'est bien plus long que d'écrire un simple billet de blog. L'écriture des 100 000 premiers caractères a été déterminante pour la suite. Je me suis rendu compte que non seulement, j'étais suffisamment motivé pour continuer, mais qu'en plus, c'était un véritable plaisir pour moi. J'ai donc continué sur ma lancée.

Contenu du livre

L'idée était de se positionner sur le créneau de la série des guides complets : s'adresser aussi bien aux débutants qu'aux initiés désireux d'approfondir leurs connaissances. Cette série se veut aussi pratique en entrant dans le vif du sujet et en appliquant les connaissances proposées directement dans un cas réel.

Le livre revient donc sur les fondamentaux de JavaScript. J'ai essayé d'être le plus pédagogue possible, mais en même temps, de rester fidèle et complet dans mes explications. J'ai essayé d'éviter de lier JavaScript trop fortement avec le web. Bien que le web soit à l'origine de sa large diffusion, JavaScript est plus qu'un langage qu'on utilise dans les pages web.

Pour illustrer ce fait, j'ai choisi de créer un jeu de Memory multijoueur avec le front-end en JavaScript/HTML5 et le backend en NodeJS. De cette façon, les lecteurs peuvent utiliser JavaScript dans deux contextes différents pour bien comprendre ses spécificités.

L'idée est que des personnes désireuses d'utiliser JavaScript dans leur logiciel bureautique pour créer des macros, avec leur serveur de base de donnée NoSQL, pour créer des extensions de navigateur ou des applications de bureau puissent tirer parti de ce livre sans être pollués par le développement web.

Mais en même temps, étant moi-même un grand consommateur de livres, je voulais livrer avec ce dernier un véritable projet. Trop de livres se contentent de rester évasifs ou bloqués sur la théorie et je ne voulais pas faire cette erreur.

L'avantage de ce petit jeu est qu'il m'a permis de démontrer un grand nombre de techniques front-end (API HTML5, AJAX, DOM, évènements etc...), le développement côté serveur avec NodeJS (serveur HTTP, serveur WebSocket), plusieurs design-patterns (Modules AMD & UMD, Mediator etc...), d'introduire les tests unitaires (CasperJS, Mocha) et une floppée d'outils indispensables (RequireJS, JSLint, Git).

Finalement, le livre est un point d'entrée vers JavaScript et une ouverture vers son écosystème. À sa lecture, le lecteur devrait avoir une solide connaissance du JavaScript et une bonne appréhension de ce qu'il peut maintenant faire de cette nouvelle connaissance. C'est l'objectif vers lequel j'ai essayé de tendre.

Un livre console-friendly

Le grand avantage de JavaScript c'est que tout le monde a une console JavaScript, même Madame Michu. En effet, grâce au navigateur que tout à chacun utilise, il n'est pas nécessaire de télécharger quoi que ce soit pour tester des morceaux de code.

Ainsi, tous les exemples du livre peuvent être entrés dans la console. Le pari est que le lecteur se prenne au jeu et manipule ces morceaux de code pour mieux les comprendre.

Les Chrome Developper Tools à l'honneur

Qu'il s'agisse de développer dans le navigateur ou côté serveur, les outils pour développeurs de Chrome me sont tellement utiles au quotidien que j'ai décidé de leur donner la part belle. Le livre permet donc de se les approprier et d'en faire un usage avancé.

Sources

Les sources du livre sont téléchargeable en suivant ce lien. Pour ceux que l'anglais n'effraie pas, la source est également sur GitHub.

Où se le procurer ?

A priori, n'importe où avec le code EAN (978 282240 8653). Mais vous pouvez le commander en ligne sur le site de la FNAC sur Amazon.

Réagir / Contribuer

Cette première édition ne demande qu'à s'améliorer ! Toutes les critiques sont bonnes à prendre pour faire de la prochaine édition un meilleur ouvrage, n'hésitez donc pas à m'adresser vos critiques, demandes d'amélioration/de précision par mail.

Bref, je vous souhaite une bonne lecture !