Techdays 2010 - Jour 3 - Optimiser la qualité de son code (Code Contract)
Par Christophe GRICOURT, jeudi 11 février 2010 à 23:05 :: .Net :: #144 :: rss
Bien qu’initialement destinée à traiter le sujet de la qualité du code en général, cette session s’est attardée sur Code Contracts for .Net.
Le concept de programmation par contrat a été introduit dans le langage Eiffel par Bertrand Meyer à la fin des années 80. Plus de vingt ans après, les laboratoires de Microsoft Research livrent un framework pour Visual Studio et C#, Code Contracts, qui permet de vérifier de manière statique (et dynamique) si le code et son exécution respectent les pré/post-conditions et les invariants posés par le développeur sur les classes.
Ayant moi-même écrit pas mal de code Eiffel dans le passé, je ne pense pas que le principe de programmation par contrat fera beaucoup d’émules dans la communauté Microsoft. Il a en effet l’inconvénient de multiplier le nombre de lignes de code à écrire, et de l’encombrer d’assertions souvent évidentes. En revanche, utilisé correctement, ce principe permet de détecter dès la compilation un certain nombre de bugs ou de mauvaise utilisation d’une API ; bugs qui n’apparaitraient qu’à l’exécution dans le cas d’un code « classique ».
Ainsi, Code Contracts permettra peut-être à C# de faire un pas dans le monde des applications critiques.

Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire