Développement Web
Le développement Web est devenu de plus en plus complexe avec un amoncellement de technologies nécessitant une mise à niveau régulière des compétences et des outils. Depuis l'essor du Web dans les années 2000 avec l'avènement du standard HTML et CSS, DNG apporte son expertise régulièrement sur des projets complexes avec le souci particulier du Design UX.
Le standard HTML est devenu incontournable, associé à CSS il constitue la clé de voûte de toute application Web. En revanche, il est de plus en plus rare de manipuler directement ce standard en passant par les API du DOM (Document Object Model). Les Framework Front-End ont assis leur notoriété sur leur capacité à masquer la complexité du DOM. Ils fournissent des services tels que le routage et la navigation, le databinding (l'interaction entre le modèle objet et les formulaires des pages), l’événementiel, les styles (en passant par des compilateurs SASS ou LESS) ou l'appels d'API via AJAX.
DNG apporte son expertise sur des technologies telles que Angular ou ReactJS en fonction des besoins clients et du projet ciblé.
ReactJS est devenu un Framework très en vogue, notamment lorsqu'il est associé à une pile mobile telle que React Native. Dans le cas d'une application multi-périphériques (Mobile et Desktop), ReactJS permet de réutiliser le maximum de code source entre l'application Mobile et Desktop. Il existe même des outils tels que React Native Web qui proposent de réutiliser 100% du code source d'une application React Native sans utiliser HTML et le DOM. La particularité de React par rapport à d'autres Framework du même type est sa simplicité. En effet, React n'est qu'un simple moteur de rendu de composants, il laisse à l'utilisateur le choix de ses services techniques (routage et navigation, événementiel, styles, Ajax, ...).
Certains projets s'en accommodent très bien de part leur spécificité, d'autres nécessiteront de lui accoler des services tiers. De part sa nature, React permet d'utiliser la meilleure pile technique disponible à un instant T, une philosophie qui va à l'encontre du "tout intégré" privilégié par Angular par exemple. ReactJS s'appuie sur le standard JavaScript (ES5,6 ou 7) et fonctionne également très bien en mode typé avec TypeScript ou Flow.
Contrairement à React, Angular propose une approche "Tout en un". Plus qu'un Framework, Angular est une boite à outils et un compilateur. Il s'appuie sur le langage typé TypeScript et expose un nombre considérable de services techniques : routage et navigation, databinding multi-directionnels et gestion de formulaire, programmation réactive avec RXJS, Pipes et Transformations, Entrées/Sorties, Directives, AJAX (HttpClient).
Angular se suffit à lui même la plupart du temps, même lorsqu'il s'agit de réaliser des applications progressives PWA (Progressive Web Apps). Angular propose des services workers et toute une panoplie d'outils liés au mode déconnecté.
Standards HTML et CSS
![](https://www.dng-consulting.com/wp-content/uploads/2019/05/htmlcsslogo-300x188.png)
Technologie ReactJS
![](https://www.dng-consulting.com/wp-content/uploads/2019/05/reactlogo-205x300.png)
Technologie Angular
![](https://www.dng-consulting.com/wp-content/uploads/2019/05/angularlogo-282x300.png)
Progressive Web App et applications Offline
Une progressive Web App est une application s'exécutant dans un navigateur Web possédant les caractéristiques suivantes :- Progressive — Fonctionne pour n'importe quel utilisateur et n'importe quel navigateur car celui-ci fait partie intégrante de l'application.
- Responsive — S'adapte automatiquement à n'importe quel affichage (tablette, smartphone ou desktop).
- Connectivity independent — Le concept de Service Worker permet une utilisation déconnecté ou sur une faible bande passante.
- App-like — Se comporte comme une application native avec une identité visuelle très proche.
- Fresh — Constamment à jours grâce au processus de mise à jour automatique fournit par les Service Worker.
- Safe — Basé sur le protocole HTTPS pour sécuriser les échanges.
- Discoverable — Identifié comme une application grâce aux méta-données transmises dans un fichier manifest.
- Re-engageable — Permet l'utilisation des notifications Push pour exposer du contenu.
- Installable — Installable sur le bureau en mode plein écran avec une simple URL.
- Linkable — Pouvant être partagé et installé à partir d'un lien.