Et voici une technique très importante pour créer des applications robustes et évolutives.
Découvrez dans cette vidéo comment la composition et le polymorphisme vous aide à créer une architecture solide et souple à la fois !
[ppmaccordion][ppmtoggle title= »Afficher le texte de la vidéo »]
Comment créer des applications robustes et évolutives ?
Bonjour, et bienvenu sur Développement Facile.
Dans ce nouveau cours, vous allez apprendre à créer des applications robustes et évolutives, c’est à dire, en tant que développeur, en tout cas comme moi, vous voulez peut-être créer des applications qui soient très résistantes, très stables, sans bug, performantes, mais en même temps évolutives pour répondre aux nombreuses demandes des utilisateurs, des nouvelles fonctionnalités ou de vos clients qui souhaitent de nouvelles fonctionnalités, des nouvelles interfaces.
Comment créer des applications robustes et évolutives ?
Une application à la fois souple et solide !
Dans ce cours, vous allez apprendre à créer une application à la fois souple et solide. C’est à dire, une application, comme je vous l’ai dis, fiable, sans bug et performante, et qui vous permette d’implémenter sans aucun risque et surtout sans prise de tète, très simplement des nouvelles fonctionnalités avec une évolution simple, précise et rapide.
Les Stratégies Essentielles
Donc, je vais vous enseigner des stratégies essentielles, que vous pouvez utiliser, comme d’habitude, dès maintenant dans votre application en fonction de votre langage de développement. Toujours, je vous le répète souvent, concevez des applications faiblement couplées. C’est à dire, des classes indépendantes les unes des autres, qui communiquent entre elles, mais qui restent quand même indépendantes, avec une conception d’application ouverte à l’extension, mais fermée à la modification. En d’autres mots, le code est fermé à la modification c’est à dire, le code de votre framreork de classe, évolue très rarement ou alors seulement pour ajouter des optimisations de code que vous avez découvert, par contre, il est ouvert à l’extension, c’est à dire, vous pouvez rajouter des nouveaux composants, des nouvelles classes, pour l’agrémenter, lui permettre de prendre en charge de nouvelles fonctionnalités.
Un concept très intéressant, dans le cours dernier, je vous disais de vous méfiez de l’héritage et plutôt d’effectuer de la composition. Il est préférable de toujours manipuler des instances de classes, plutôt que les classes elles-mêmes. Dans une classe, il est plus simple d’instancier un objet dont vous avez besoin, plutôt que d’hériter de cette classe, de cet objet là. Donc, l’ajout de nouvelle classe s’appuie sur des interfaces, le polymorphisme, c’est à dire sans modifier les classes existantes.
Qu’est ce qu’est la composition ? Comme je vous l’ai dis, préférez toujours la composition à l’héritage, en tout cas, ça complète bien l’héritage dans certains cas, notamment dans le cours précédent avec les classes abstraites. Et pour rappel, l’héritage c’est une relation EST-UN. Hors que la composition c’est une relation A-UN, c’est à dire, cette classe à un objet qu’elle manipule avec ses méthodes et ses propriétés. Par exemple, une voiture a un comportement sur la route : son adhérence, son accélération, son freinage. Et au lieu d’hériter d’un comportement voiture, une classe voiture qui gère un peu tout, comportement, l’accélération le freinage, bien, préférez plutôt avec votre classe voiture, manipuler des objets, un objet adhérence, accélération, freinage, ça fait que, concrètement, vous aurez des classes freinages, accélérations et adhérences, et dans votre classe voiture, vous utiliserez des instances. Vous créerez une nouvelle instance de la classe adhérence, une nouvelle instance de la classe accélération, de la classe freinage. Ca va vous permettre d’être beaucoup plus souple, si vous modifiez la classe adhérence, vous saurez que tout les objets, que ce soit une voiture ou un autre objet, par exemple, un vélo qui utilise une classe adhérence, seront mis à jour automatiquement, mais sans mettre en danger vos classes.
Avantages de la composition
Les avantages de la composition, c’est qu’une classe manipule des objets, des instances d’objets qui gèrent eux mêmes leurs comportement, c’est à dire que la classe s’occupe juste d’appeler des méthodes de l’objet, d’utiliser des fonctionnalités, de configurer l’objet, mais c’est l’objet qui gère son comportement tout seul. Ca permet d’encapsuler des algorithmes dans leurs propres ensembles de classes. Vous avez la possibilité de modifier le comportement au moment de l’exécution si l’objet est composé implémente la bonne interface comportementale. Et il faut savoir que la composition est utilisée dans de nombreux modèles de conceptions. Dans les cours précédents, vous avez commencez à voir les modèles de conception Observer, Décorateur, qui utilisent la composition, donc dès maintenant commencez à bien sentir, à appréhender cette notion de manipulation d’instance de classe, plutôt que l’héritage.
Il faut savoir qu’il vaux mieux définir des conceptions d’applications souples et faciles à maintenir, vous y gagnerez en performances, efficacités dans votre développement et en sérénité.
Les Gains pour vos applications performantes
Les gains pour vos applications performantes, vous ajoutez des nouveaux comportements, sans modifier le code existant, donc moins de risques de bug, des applications toujours performances, et des conceptions qui sont résistantes aux changements. Votre application peux évoluer, elle restera toujours stable, sans bug et performante. Donc elles seront suffisamment souples pour accepter des nouvelles fonctionnalités, comme je vous l’ai dis, qui répondent à l’évolution des besoins, en fonction des demandes de vos utilisateurs ou de vos clients.
A vous de jouer !
Comme d’habitude, vous trouverez un exemple de code source sous ce cours vidéo. C’est à dire la manipulation d’instance de classe, la composition. Et mettez en pratique dès maintenant les conseils de ce cours dans votre programmation dans vos appli, en fonction de votre langage.
Si vous avez des questions, posez-les moi directement sous ce cours vidéo.
Je vous dis à très bientôt pour le prochain cours sur Développement Facile.
[/ppmtoggle][/ppmaccordion]
Et vous, utilisez-vous la composition, le polymorphisme dans vos applications ?
Dites moi dans les commentaires, de quelle façon vous mettez en place cette technique et avec quel langage.