Nous avons vu précédemment comment définir des post-conditions à l’aide de Code Contracts. Nous allons voir maintenant comment définir des invariants à l’aide de Code Contracts.
Nous avons vu précédemment comment définir des post-conditions à l’aide de Code Contracts. Nous allons voir maintenant comment définir des invariants à l’aide de Code Contracts.
Nous avons vu précédemment comment définir des pré-conditions à l’aide de Code Contracts. Nous allons voir maintenant comment définir des post-conditions à l’aide de Code Contracts.
Ce post fait suite à une introduction sur Code Contracts. Il explique ce qu’est une pré-condition, comment les définir et aussi comment les activer à l’aide de l’outil de réécriture.
Code Contracts est une nouvelle fonctionnalité du .NET Framework qui permet de définir des contraintes dans du code .NET qui pourront être réutilisées par des outils d’analyse ou d’écriture du code.
Je viens de livrer sur CodePlex la première version de mon projet CCI Explorer. Ce projet est une alternative open source de .NET Reflector qui est maintenant devenu payant.
Comme son nom l’indique, CCI Explorer se base sur le projet open source “Common Compiler Infrastructure” de Microsoft qui permet de décompiler et d’analyser du code depuis des assemblys .NET. Ce projet est utilisé par FxCop/Code Analysis, Sand Castle et Code Contracts.
Bien évidemment le projet en est à sa première version alpha, il manque donc plein de fonctionnalités, mais vous pouvez soumettre vos retours directement sur le site du projet.
Voici le lien pour télécharger la version 0.1.0.
Dans moins d’un mois aura lieu les TechDays de Microsoft à Paris. A cette occasion j’aurai le plaisir d’animer une session consacrée à Code Contracts avec Amine ZEMZEMI (MSP).
Code Contracts est une nouveauté du .NET Framework 4.0 qui permet de définir des contraintes qui seront validées à l’exécution et/ou à la compilation !
Venez donc découvrir dans cette session les différents types de contrôles que vous pourrez mettre en place (pré-conditions, post-conditions,…etc) et comment ils vont améliorer la qualité de votre application !
Après les TechDays, Amine et moi-même rédigerons très certainement plusieurs articles sur Code Contracts.
Accéder à la page officielle de la session sur Code Contracts
Amis DJ, suite à une question sur les forums Microsoft, je viens de développer une petite classe permettant aux utilisateurs de changer le volume du son de Windows. Pour cela je fais appel aux API Windows suivantes : waveOutGetVolume et waveOutSetVolume qui permettent respectivement de récupérer et de modifier le volume du son de Windows.
Une question qui revient fréquemment dans les forums Microsoft : « Comment réaliser une capture d’écran de tout le bureau Windows ?« .
Une classe peut-être vue comme un Dictionary<String, Object>. Pour rappel, Dictionary<TKey, TValue> est une collection contenant des paires clé/valeur, le premier paramètre de type étant le type de la clé, et le second le type des valeurs. (Lire la suite…)
Depuis la création du .NET Framework, j’ai vu beaucoup d’articles sur Internet concernant la gestion des exceptions d’un point de vue technique, mais très peu sur le concept et la philosophie de ce mécanisme.
Les exceptions offre un très grand confort au niveau de la gestion des erreurs, permettant aux développeurs de se concentrer beaucoup plus sur leur code fonctionnel. Malheureusement, la gestion des exceptions est souvent mal utilisée par les débutants… (Lire la suite…)