Inversion of Control (IoC)

Inversion de contrôle (IoC) est une approche dans le développement de logiciels qui favorise la suppression des dépendances entre les classes pour avoir un code plus simple et plus flexible. Autrement dit, c'est de contrôler la dépendance en dehors de la classe, tout en rendant cette dépendance explicite.
L'utilisation de l'IoC et plus particulièrement l'injection de dépendance (DI) est générallement conçu pour créer des applications qui seront plus flexible, uni-testable, simple et facile à maintenir à long terme. Aujourd'hui, il existe plusieurs IoC en .NET. Parmi les principales, on trouve : Castle Windsor, StructureMap, Spring.NET, Autofac, Unity, Ninject...


JSON vs XML

Utiliser JSON, si vous avez besoin de :
  1. une configuration plus simple
  2. une analyse rapide par le browser.
  3. une sérialisation des structures données
  4. envoyer des structures plutôt qu'un document


Utiliser XML, si vous avez besoin de :
  1. utiliser les outils XML, XSLT
  2. utiliser des structures de données complexe
  3. fournir des données à usage général
  4. envoyer un document plutôt qu'une structure

Termes techniques

JSON ( JavaScript Object Notation ) est un format léger d'échange des données. Il est écrit sous format texte. Il est fait pour la structuration de données.
Microsoft WCF RIA Services simplifie le développement des solutions N-Tier pour les applications internet riche (RIA). Il permet de construire de bout en bout les applications Silverlight. Il se présente comme un intermédiaire entre la couche présentation et la base de données.
Microsoft Silverlight est un framework d'application Web. Il fournit des fonctionnalités similaire à Adobe Flash. Par contre, il n'est compatible qu'avec les systèmes d'exploitations Microsoft Windows.

Les spécifications fonctionnelles sans peine !

J'aime bien la façon dont Joel Spolsky a décrit en quelques paragraphes : qu'est ce qu'une Spécification, comment et par qui doit être rédigée ... http://french.joelonsoftware.com/Articles/PainlessFunctionalSpecifi-2.html

L'anti-pattern : "Anemic Domain Model"

Anemic Domain Model est un terme utilisé pour décrire l'utilisation du modèle métier (Domain Model) où la logique métier est implémentée en dehors des objets du domaine.
Il est décrit par Martin Fowler, comme un anti-pattern (AnemicDomainModel).. Qui décrit que les classes métier ne contiennent que des attributs et les méthodes getters et setters associées aux attributs. Donc, les objets métier ne servent que de stockage de données.

Les avantages :
- Séparation claire entre la logique et les données (langage procédurale)

Les inconvenants :
- il s’agit d’une approche anti-objet, un objet contient à la fois des données et des comportements
- Facilite la duplication du code dans les cas d'utilisation similaire ce qui permet de réduire la réutilisation du code.
- difficulté de maintenance des règles métier