编写框架的指南

时间:2008-08-27 02:48:40

标签: frameworks

我面临着编写框架以简化大型复杂对象库(ArcObjects)的工作。您建议创建此类框架的准则是什么?静态方法首选吗?你如何处理伐木等事情?您如何通过供应商可能引入的更改来证明您的框架代码?

我想到了我见过的NHibernate,log4net以及我从NLog和NetTopologySuite这些项目中读过的代码的各种包装器和帮助器,我看到了很多好的方法,但说实话,我我不知道从哪里开始。

BTW - 我在C#3.5工作,但更多的是推荐的方法而不是语言。

4 个答案:

答案 0 :(得分:5)

布拉德艾布拉姆斯的Framework Design Guidelines书就是这个。可能值得一看。

答案 1 :(得分:2)

尝试编写更灵活的代码。例如,如果您有一个接受数组作为参数的方法,您是否可以接受IEnumerable或IList?

答案 2 :(得分:1)

我认为你的一致性比你使用的约定更重要。就未来的自我证明而言,这是您正在构建框架的代码问题。在砖房上建造比在沙滩上建造要容易得多。

答案 3 :(得分:1)

编写框架代码与编写应用程序代码完全不同。

在编写框架级代码时,我一直咨询(并让其他人参考)Design Guidelines for Class Library Developers