Comment développer un bon composant générique ?

Article

Il peut arriver que l’on pense à tort qu’en réutilisant un composant dans un autre projet cela aura pour effet de réduire les coûts de développement. Cela n’est pas valable dans tous les cas et pour posséder un composant unique réutilisable dans plusieurs autres outils informatiques, il faut être prudent.

La réutilisation d’un bout de code dans d’autres environnements est très souvent une idée sur laquelle mise les développeurs, cela permet d’aller plus vite en dupliquant le composant et de réduire les coûts de développements. Mais force est de constater que ce n’est pas si simple que cela.

Dans la majorité des cas, la problématique de réutilisation d’un composant informatique n’est pas liée à la technologie mais au design.

Il faut garder à l’esprit qu’un composant réutilisable est au minimum 3 fois plus complexe à concevoir qu’un composant à usage unique. (Robert Glass – ingénieur logiciel américain)

Attention à la duplication absolue d’un composant informatique

Il arrive toujours un moment où dans un projet informatique on se dit la chose suivante : c’est bon pour ce composant on l’a déjà développé dans une application ou dans une itération antérieure, on a juste à faire un copier-coller ça nous fera gagner du temps.

Comme vous l’avez sûrement déjà expérimenté, dans la majorité des cas, le copier-coller ne fonctionnera pas.  

En effet la duplication absolu d’un composant dans un contexte qui est à 100% le même que le contexte initial d’usage du composant n’arrive jamais. Il y aura toujours des différences, des variabilités entre les environnements qui peuvent être fonctionnelles et techniques. Il est très rare de se retrouver avec deux environnements totalement distincts dans lequel le composant pourrait s’intégrer parfaitement, il y a toujours des différences quand on passe d’un contexte à un autre.

Un niveau de conception élevé

Ce qui nous amène à dire que le niveau de conception qu’il faut atteindre pour permettre de gérer toutes les variations d’un environnement à un autre est très élevé. Et c’est justement sur ce niveau de conception qu’il faut tout miser pour parvenir à créer un composant qui sera réutilisable dans d’autres applications.

Vous l’aurez compris l’effort qu’il faut investir pour développer un composant réutilisable est drastiquement supérieur à l’effort qu’il faut fournir pour construire un composant qui ne sera utilisé qu’une seule fois. Dans le cas de la création d’un composant réutilisable, il va falloir anticiper et concevoir toutes les variabilités auxquelles le composant fera face lors de son utilisation.

A quel moment faut-il concevoir le composant générique ?

Pour concevoir un bon composant générique et réutilisable, l’idéal serait d’attendre que les prochaine itérations soient terminées. Ainsi l’équipe de développeurs détient la connaissance détaillée de tous les contextes dans lesquels le futur composant générique sera déployé. Et c’est seulement à partir du moment où les contextes sont finis et prêts que l’on peut se lancer dans la conception du composant utilisables dans tous les contextes.

La phase de test est très importante dans le cas de la construction d’un composant réutilisable. Souvent le plus compliqué est de parvenir à tester ce composant dans l’ensemble des environnements, c’est pour cela qu’il faut attendre que les environnements soit testables avant de vouloir déployer son composant.

Chez Bocasay nous développons vos projets informatiques de bout en bout, de la conception, en passant par les développements, aux tests jusqu’au déploiement en production de votre application.

Visitez le Blog - tech, méthodes et dernières actus.