扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
java社区开源盛行,sun也是支持开源的,java作为一个平台,在很多方面都是定义了标准规范,其他人可以按规范设计自己的实现,这样开源社区就比较有市场。另一方面,java本身在很多方面的易用性确实很差,所以也有很多开源项目存在的必要,比如apache的commons.
相比之下,ms就是另一种姿态了。它首先不开源,其次不喜欢开源,其实或许还有点抵制开源(个人观点,不过迫于压力,和商务需要,ms也决定开放很多一些其原先不愿开放的个人标准,连office格式都要公布了)。
自从C#出现以后,很多开源的热衷者也开发了一些基于。net主要是C#的开源项目,比较有名的是几个java版的拷贝。比如nunit,nant,ndoc,nhibernate,springNet,ibatisNet等不过处境好像都不是比较满意。
nunit在所有的这些DotNet开源项目中是做得比较好的,个人觉得由于C#对元数据支持比较好,因此nunit比junit有提高。不过不幸的是,ms vs 2005(我现在使用的是vs 2005 team beta2)中集成了单元测试框架和工具,凭着ms的实力,加上和vs的天然集成,该测试框架应该是以后单元测试的首选。我简单使用过,功能还是比较大的。
nant是ant的一个移植,ant是java中最成功的开源项目之一,确实极大的提高了开源项目的生产力,当然在企业环境中也被广泛使用。然而,。net2.0中集成了msbuild,一个新的编译发布工具,和vs2005集成的很好。这肯定给了nant一个沉重的打击,虽然msbuild或许还不太成熟,还有很多bug,但是,总归,微软会很快叫他比nant好用的多的。
ndoc应该是一个比较有用的工具,对于生成多种类型的文档比较方便。不过现在只支持vs2003样式的文档,还不支持vs2005的msdn样式。不过现在正在筹划2.0,应该值得使用一下。
nhibernate其实不应该太有生命力,因为缺少king这样的牛人,很难有什么大的突破。而且hibernate这种orm框架其实也不适合我们现在的要求,因为我们的数据库模式不是特别的正规,而且很多方面也不是hibernate适合的地方。
springNet,ibatisNet同样也是从java移植过来的框架。一个是一个应用框架,一个是数据层半orm和dao框架。不过现在还不成熟。只能观望。我个人比较喜欢ibatis.
Castle是一个比较优秀的DotNet框架,包含的内容比较多。相比Spring.Net成熟,也在实践中也有使用。值得研究一下,在项目中使用可能为时尚早。
当然还有很多名不见经传的开源项目,不过近期还难成气候。
其他,由于。net的类库的易用性比java要强得多,所以类似commons的开源应该比较少。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者