04-Interaction et flux

Cette rubrique va se découper en deux approches, voir deux familles d’outils, qui prendront en charge d’une part l’aspect client, et d’autre part la gestion serveur du développement.

Aspect client de l’application web

Donc dans un premier temps, concernant l’aspect client, ce chapitre aborde le troisième larron de la bande des langages clients, le JavaScript qui est un langage de programmation permettant d’apporter de l’interaction au sein des sites et applications web. Ce langage est suffisamment puissant et permet de pouvoir répondre aussi bien aux actions des utilisateurs qu’à une écoute événementielle de l’ensemble des éléments constituants de la page.

Depuis l’arrivée de HTML5, un grand nombre d’API ont rejoint, et continuent de rejoindre, les standards du web. Ces API permettent aux navigateurs de prendre en compte de manière native certaines fonctionnalités nécessaires au développement d’applications web, comme le glissé déposé, les stockages d’informations, les services workers, la gestion du dessin pour n’en citer qu’un infime échantillon. Là encore le langage JavaScript reste incontournable pour gérer et mettre en place de telles fonctionnalités.

En complément, de nombreuses applications gravitant dans l’environnement de travail et de production, Node, Grunt, Gulp, PostCSS, Fireworks entre autres, s’appuient sur ce langage. Son apprentissage est donc une phase importante du métier du front-end développeur.

Aspect serveur des applications web

Bien souvent nos applications, ou sites web, ont besoin de s’appuyer sur une gestion métier des contenus ou encore de stocker de l’information en ligne, en ce sens le front-end va être relayé par une partie back-end. Au cours de cette phase du développement nous compléterons les langages approchés jusqu’à présent par du PHP pour prendre en charge la gestion dynamique des contenus en complément à l’usage de base de données comme MySQL, (MAriaDB) ou encore PostGreSQL…

Il est à noter au passage que certaines applications peuvent également ne s’appuyer que sur du JavaScript, utilisé cette fois ci coté serveur et proposer l’usage de base de données NoSQL comme MongoDB, Cassandra, Redis, CouchDB entre autres.