C# LanguageContrats de code


Syntaxe

  1. Contract.Requires (Condition, userMessage)

    Contract.Requires (Condition, userMessage)

    Contract.Result <T>

    Contract.Ensures ()

    Contract.Invariants ()

Remarques

.NET prend en charge l'idée de Design by Contract via sa classe Contracts trouvée dans l'espace de noms System.Diagnostics et introduite dans .NET 4.0. L'API de contrats de code inclut des classes pour les vérifications statiques et d'exécution du code et vous permet de définir des conditions préalables, des postconditions et des invariants au sein d'une méthode. Les conditions préalables spécifient les conditions que les paramètres doivent remplir avant d'exécuter une méthode, les conditions postérieures vérifiées à la fin d'une méthode et les invariants définissent les conditions qui ne changent pas pendant l'exécution d'une méthode.

Pourquoi les contrats de code sont-ils nécessaires?

Le suivi des problèmes d'une application lorsque votre application est en cours d'exécution est l'une des préoccupations majeures de tous les développeurs et administrateurs. Le suivi peut être effectué de plusieurs manières. Par exemple -

  • Vous pouvez appliquer le suivi sur notre application et obtenir les détails d'une application lorsque l'application est en cours d'exécution

  • Vous pouvez utiliser le mécanisme de journalisation des événements lorsque vous exécutez l'application. Les messages peuvent être vus à l'aide de l'Observateur d'événements

  • Vous pouvez appliquer l'analyse des performances après un intervalle de temps spécifique et écrire des données en temps réel à partir de votre application.

Les contrats de code utilisent une approche différente pour le suivi et la gestion des problèmes au sein d'une application. Au lieu de valider tout ce qui est renvoyé par un appel de méthode, Contrats de code à l'aide de conditions préalables, de postconditions et d'invariants sur les méthodes, assurez-vous que tout ce qui entre et sort de vos méthodes est correct.

Contrats de code Exemples Liés