我是一个.NET技术为主的程序员,每次开发一个新的应用的时候,都会被人问道“.NET有没有框架可以用,有没有类似hibernate,structs,spring之类的框架,怎么什么都没有呢,.NET有没有开源的现成的好用的框架,怎么每次都要造轮子呢?你们在干什么呢,数据访问和日志这种东西怎么每次你们都要花功夫来写呢,没有可以参考的吗”,大部分人的回答往往是“没有,我们自己也没有积累,别人的不如自己写呢,还要看明白才会用,没有java那么多的现成框架”。

  其实不是那样的,.NET由于不是开源的,所以没有像java那么多的开源社区支持,那么多的开源框架可以参考,而且大多很是成熟,好像我们.NET就被微软一个人绑架了。什么都要自己写,如果自己再没有积累的话,每次都要造轮子,每次造的轮子还不一样,哎。。。。。。。。。。。。。。。

  其实,有很多的框架还是可以用的,而且微软这两年对开源的态度也有所转变,只是由于商业上的考虑,开的力度不像大家想象的那么大,​​http://www.codeplex.com/​​就是微软创建的一个开源站点,微软还有一个Patterns & Practices小组,会出产很多的框架来帮助他的开发伙伴来完成日常项目的开发,帮助他们更好的使用.NET开发企业级应用和互联网应用。

  知识点:

  微软"模式与实践"宗旨在于通过提供一系列的成熟设计模式及经验乃至原型系统源代码,帮助广大开发团队进行更好的设计及技术选型;同时也通过提供经过微软自身实践验证的高效软件开发流程及实践,帮助开发团队顺利的搭建团队并实现高效开发。目前主要研究方向有:敏捷软件开发,Enterprise Library,Application Architecture,Composite Application Guidance, Software Factory等等。

  开源框架还有很多,国内的牛人也写过很多。国外大名鼎鼎的​​CSLA.NET​​就是其中一个,它也在随着.NET的版本不断更新。它还有配套的图书《Apress - Expert C# 2008 Business Objects (Dec 2008).pdf》,这本书的pdf版可以在网上下载,在CSDN里面就有下载,包括图书和源码,我以后还准备写一个CSLA.NET的系列学习笔记。这是佩服国外的家伙,考一个框架就可以生活了,不像我们,从底层到UI你全部都要会,哎。。。。。。。。。。。。除了锻炼人,没有别的好处了,搞得我们拿起什么都会一点,但是都不够专啊,这也是国内为什么很少有优秀的框架产生。(说完这句话,希望不要有太多人给我板砖)

  还是回来说说Enterprise Library吧,在4.1中他包含了

  Caching 缓存

  Cryptography 密码管理

  Data Access 数据库访问

  Exception Handling 异常处理

  Interception 拦截

  Logging 日志管理

  Security 安全管理

  Unity 依赖注入

  Validation 数据验证

  都是我们做任何应用开发,所必需的内容,而且使用非常频繁,几乎的系统必备,也是我们重复造的最多的轮子,而且对于我们的整体业务实现没有直观帮助,但是又很重要的基础部件。(领导不关心啊,我们做的工作都在这里了,55555555555555)

  它在codeplex上地址是​​http://entlib.codeplex.com/​​,最近发布了5.0 BETA2,真是快啊,每次发布他都会融入.NET的最新技术。估计这次又会加入.NET4.0的一些特性吧。

  Enterprise Library 4.1可以工作运行在VS2008、Windows Management Instrumentation(WMI)2.0,以及.NET 3.5之下。

  未完待续。。。。。。。。。