Quelques méthodes pour cloner des objets en .NET

Parfois pour certains traitements, il est nécessaire de cloner l’instance d’un objet en une ou plusieurs autres instances distinctes. Suivant la complexité de l’objet ou suivant le nombre de copies nécessaires, cette copie peut être plus ou moins complexe à effectuer. D’autre part, dans le cas où on veut dupliquer un objet en plusieurs instances,…

Continuer à lire

“Expression trees” en 2 min

Quelques définitions en préambule Avant de rentrer dans les détails des arbres d’expression (i.e. expression trees), il faut définir quelques termes. Delegate Il s’agit du type d’une référence vers une méthode comportant une signature particulière. Le delegate définit donc le type de la référence et non pas la référence elle-même. Par exemple, en C# un…

Continuer à lire

Documentation du code C# en 1 min

Il est possible d’ajouter de la documentation dans du code C# et de générer cette documentation vers des fichiers XML à la compilation. Il est souvent difficile de maintenir une documentation du code à jour car très souvent quand on modifie le code, on oublie de répercuter ces modifications dans la documentation. La documentation peut…

Continuer à lire

Exceptions possibles en utilisant XmlSerializer

Quand on utilise la classe System.Xml.Serialization.XmlSerializer, outre les erreurs classiques de sérialisation/désérialisation il peut survenir des exceptions sans qu’on est fait de changement particulier dans le code. On ne comprends pas toujours facilement l’origine des ces exceptions car le code ne semble pas avoir changé et qu’il a toujours bien fonctionné auparavant. Ces exceptions sont…

Continuer à lire

Aide mémoire sur l’utilisation de “new” et “override”

Si vous connaissez déjà new et override dans les grandes lignes, aller directement au résumé des cas possibles pour vérifier si vous maîtrisez tous les cas de figures. Même si les mots clés new et override n’ont, à priori, rien à voir, d’une façon générale ils modifient le comportement de membres d’une classe dans le…

Continuer à lire

Nombres à virgule flottante en C# en 5 min

Nombres à virgule flottante En C#, pour stocker des nombres réels on peut utiliser les types: float ou double qui sont des types de nombres binaires à virgule flottante ou decimal qui est un type de nombre décimal à virgule flottante. Le choix précis d’un de ces types n’est pas anodin et ne doit pas…

Continuer à lire

Quelques blogs intéressants

Pour avoir des informations mises à jour toutes les semaines sur la technologie .NET en général: https://blogs.msdn.microsoft.com/dotnet/ Blogs sur la technologie .NET en général Scott Hanselman: http://www.hanselman.com/blog/ Jon Skeet: https://codeblog.jonskeet.uk/ Phil Haacked: http://haacked.com/ Rick Strahl: https://weblog.west-wind.com/ Stephen Cleary: http://blog.stephencleary.com/ Oren Eini: https://ayende.com/blog/ Software Craftsmanship Sandro Mancuso: http://codurance.com/blog/author/sandro-mancuso/ Jeff Sutherland: https://www.scruminc.com/scrum-blog/ Blog Arolla: http://www.arolla.fr/blog/ Blog Octo:…

Continuer à lire

EventViewer en 5 min

L’Event Viewer permet de visualier des erreurs ou des messages provenant du système ou d’applications. C’est un outil intéressant car il centralise tous les messages et que les messages sont facilement consultables. Dans le cas d’une application qu’on développe et pour laquelle on souhaite indiquer des messages particuliers, l’event viewer peut être intéressant pour donner…

Continuer à lire

PerformanceCounter en 5 min

Les compteurs de performance Windows permettent de mesurer l’évolution de certaines données de performance liées à une machine (charge CPU, mémoire utilisée, les entrées/sorties réseau) ou à un ou plusieurs processus (taille des piles, quantité de mémoire managée utilisée etc…). Sommaire 1. Types de compteurs de performance   Précisions sur le type RateOfCountsPerSecond32   Précisions sur le…

Continuer à lire