Angular, l’environnement de développement pour l’entreprise
Ce qu’attendent les entreprises de leurs applications web et mobiles, c’est qu’elles soient robustes, évolutives, aisément maintenables et développées dans un cadre cohérent. C’est pour répondre à ces exigences que nous recommandons l’emploi d’Angular comme environnement de développement.
Avec Angular, Google a fait deux paris gagnants : celui d’utiliser Typescript comme langage de développement et celui de livrer son environnement de développement sous la forme d’une boîte à outils complète. Ces deux choix garantissent, en effet, la création d’applications de bonne facture et une cohérence dans les pratiques de développement. Et c’est exactement ce dont ont besoin les entreprises pour leurs projets web et mobiles un peu consistants.
Typescript, solide et scalable
Typescript est un Javascript auquel on a ajouté une surcouche syntaxique permettant de préciser et de vérifier le type des objets - variables, résultats attendus ou fonctions. Le langage incite et aide ainsi à produire un code robuste.
Le fait de disposer d’un environnement clé en main avec tous les outils nécessaires au développement d’une application présente un double intérêt pour l’entreprise : un gain de temps et, surtout, l’utilisation des mêmes outils au sein de l’équipe et d’un projet à l’autre. Cette harmonisation dans les pratiques contribue à faciliter la maintenance des applications et la formation des équipes aux différents outils. L’entreprise s’épargne, en outre, la charge du maintien de la cohérence du package puisque ce travail est assuré par la communauté Angular elle-même.
Ivy, un moteur de rendu maison
Le revers de la médaille d’un environnement aussi complet pourrait être sa lourdeur. Choisir Angular pour des projets de petite dimension n’est, de fait, pas forcément approprié. En tout état de cause, pour contredire ses détracteurs sur ce point, Angular incorpore depuis peu son propre moteur de rendu, appelé Ivy, qui permet d’optimiser le code, avec le meilleur résultat.
Au-delà de ces atouts les plus saillants, il faut ajouter qu’Angular adopte des principes de conception que nous approuvons, comme la conformité au modèle d’architecture logiciel model-view-controller ou le principe d’injection des dépendances qui réduit le couplage entre les objets et les services, ce qui facilite la maintenance et apporte de la flexibilité dans les évolutions de l’application.
Enfin, Angular est utilisé nativement par de nombreux environnements de développement mobile, notamment Ionic, qui présente l’avantage de générer des applications à la fois pour le web et pour les différentes plateformes mobiles du marché.
Quelques bonnes pratiques de travail
Nos recommandations pratiques pour bien développer avec Angular :
- travaillez l’architecture logicielle du produit final et le dimensionnement des composants pour tirer le meilleur parti de l’outil,
- privilégiez NestJS pour le développement du « backend » du produit, car les deux outils sont appairés,
- distinguez les composants génériques des composants-pages et créez une arborescence de fichiers correspondant à celle de la navigation, pour faciliter la maintenance et les mises à jour de l’application.
Enfin, sachez que nous avons créé une bibliothèque de composants Angular génériques à destination de nos clients. Adaptables rapidement à leur contexte, ils permettent d’accélérer les développements.
Source illustration : Design vecteur créé par stories - fr.freepik.com
Xavier, Expert TechniquePublié le 20/10/2020

Svelte.js : une solution pour des applications web rapides
Simplicité et rapidité sont la promesse de Svelte pour une meilleure expérience utilisateur et développeur, Thibault vous en dit plus !

Développement mobile : hybride ou natif ?
Et si vous pouviez développer une fois vos applications mobiles et déployer sur de multiples plateformes d'un coup ?

Pourquoi utiliser une plateforme de Machine Learning automatisé ?
Charlotte et Nicolas vous emmènent à la découverte des solutions d'AutoML de DataRobot et H2O Driverless AI

Comment une plateforme peut-elle servir de fondation à votre futur SI ?
Une plateforme de services n'est pas dédié uniquement à vos clients et leur satisfaction mais peut aussi être la base de votre futur Système d'Information.