Question

Je suis confronté à l'écriture d'un framework pour simplifier le travail avec une bibliothèque d'objets volumineuse et complexe (ArcObjets).Quelles lignes directrices proposeriez-vous pour créer un cadre de ce type ?Les méthodes statiques sont-elles préférées ?Comment gérez-vous des choses comme la journalisation ?Comment assurer la pérennité de votre code-cadre face aux modifications qu'un fournisseur pourrait introduire ?

Je pense à tous les différents wrappers et assistants que j'ai vus pour NHibernate, log4net et au code que j'ai lu dans des projets comme NLog et NetTopologieSuite et je vois tellement de bonnes approches, mais honnêtement, je ne sais pas par où commencer.

BTW - Je travaille en C# 3.5 mais il s'agit davantage d'une approche recommandée que de langage.

Était-ce utile?

La solution

Celui de Brad Abrams Lignes directrices pour la conception du cadre le livre parle de ça.Cela vaut peut-être le détour.

Autres conseils

Essayez d'écrire du code pour être plus flexible.Par exemple, si vous avez une méthode qui accepte un tableau comme paramètre, pourriez-vous accepter un IEnumerable ou un IList à la place ?

Je pense que votre cohérence est plus importante que les conventions que vous suivez.En ce qui concerne votre pérennité, cela dépend du code pour lequel vous créez un cadre.Il est beaucoup plus facile de construire sur une maison en brique que sur une maison en sable.

L'écriture de code pour un framework est absolument très différente de l'écriture de code d'application.

J'ai toujours consulté (et fait consulter) les Directives de conception pour les développeurs de bibliothèques de classes lors de l’écriture de code au niveau du framework.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top