`

百万开发者拥戴!七大.NET著名开源项目

    博客分类:
  • .NET
阅读更多
新翻译了篇帖子,原文发表在

http://publish.itpub.net/a2010/0906/1099/000001099775.shtml上



尽管过了相当长的时间,花费了不少资源,微软和.NET社区还是在最近几年加入到了开源运动的阵营中来了,这令人相当惊讶,因为两大阵营一直都是经常对立的。然而,事实是依靠开源,微软社区中的开源开发工具日益发展壮大。本文将深入了解.NET领域的开源项目,介绍七个在全球受到数百万.NET开发者拥戴和欢迎的开源项目。



AJAX 控件工具包

  仅仅五年时间,自从AJAX的概念提出来以后,使用JAVASCRIPT,XML和异步通信去提升用户的在线体验已经从新颖的想法变为实在的需要。因为AJAX驱动的要求已经变得很普通,不久开发者们都投入到开发AJAX框架中去,这使得象日历和客户端表单验证这样的功能变得很容易实现。

  .NET开发者在处理AJAX方面有ASP.NET AJAX Control Toolkit工具包这个很好的解决方案。它由微软公司和开发者社区联合开发,提供了多种功能强大的控件,如评分控件,模态弹出窗口,密码强度验证器,可拖拉的面板。

  可以查看ASP.NET主页上该项目的主页,上面有控件示例的清单和例子,除此之外,还有大量的导学文章,能指导如何充分利用工具包的很多特性。

  ASP.NET MVC

  MVC的架构在现在的Web开发中起着重要的作用,象Ruby on Rails,Zend Framwork等框架都是使用MVC框架进行开发的。多亏有了ASP.NET MVC框架,.NET开发者也能够拥有一个功能强大的MVC框架了。ASP.NET MVC框架提供了MVC的良好分层,测试驱动以及“约定优先”的最佳实践,为.NET开发者构建复杂的网页提供了强大的解决方案。因为是基于.NET构建的,开发者能充分利用ASP.NET的诸如数据缓存和表单验证等功能。你还可以发现不少其他项目也是基于ASP.NET MVC构建,并且提升了其功能,象MvcContrib,它扩展了ASP.NET MVC的功能,还包括象UI helper和模型绑定器等功能。

  ASP.NET MVC框架的网站提供给新手一系列学习资源,包括了视频系列导学,它们通过示范搭建应用程序的方法去指导读者学习。

  CruiseControl

  现在软件的复杂性使得软件开发团队不得不重新考虑软件开发的过程,这要引入既能缩短开发时间又能提高软件质量的方法。这使得出现了大量的软件开发最佳实践,它们越来越广泛应用在企业中,象测试驱动和持续集成。其中持续集成在整个软件开发过程中,通过有计划和严格地整合工程的组件,并能尽可能减少在这方面付出的时间和精力。这使得开发者能尽早发现和解决在整合过程中的问题,而不是等问题变得越来越复杂再去解决。

  更准确来说,持续集成包含了软件开发过程中的自动化过程,包括定期运行测试,在每次开发者向工程代码库提交代码时,重新编译构建项目。因为这个自动化的阶段包含了大量的象文件移动等操作,近年来,很多能完成自动持续化集成的解决方案出现了,其中包括开源项目CruiseControl,CruiseControl提供了自动化构建的工具,可以查看构建的结果,并且生成报告。CruiseControl现在已变成一个十分流行的持续集成解决方案。在众多的第三方持续集成工具中,可以找到象JCCTray这样的工具,它是一个桌面运行的应用程序,可以直接了解你的构建服务器的状态,并且BigVisibleCruise这个工具,使用可视化的提示显示构建服务器上所有受管理的工程的状态。  



DotNetNuke

  随着越来越多的公司正把它们的商务活动迁移到在网上,这需要功能强大的网站内容管理系统,而不仅是简单更新一下网页内容。实际上,现在的网站不仅是卖商品,同样也管理销售机会和其他合同等,也要维护文档和提供如图片和视频等多媒体服务。最有效去管理这些大量的内容的是采用集中的内容管理系统。其中最著名的解决方案是DotNetNuke,它是一个功能强大的基于 .NET的内容管理系统,已在全球500强中很多企业和众多开发者中被采用。

  DotNetNuke虽然已经有了多个版本,但开源的社区版本提供了数百个特性,如它们能让公司去管理通告,实现论坛交互,而这些都不需要有任何的编程知识。如果公司需要自定义一些新功能的话也能按它们的需要去扩展。

  最近我们写了一篇介绍DotNetNuke的关键特征的文章(http://www.codeguru.com/csharp/. ... /article.php/c17111),如果有兴趣的可以通过查看该文去学习DotNetNuke。

  Mono

  2002年,.NET 1.0的出现是软件开发领域中的一个分水岭,在众多特性中,它可以让开发者使用任何支持.NET公共运行时的语言去开发应用。当然,微软将WINDOWS平台作为.NET运行的主要平台,这对象LINUX等其他系统来说是个噩梦。然而因为.NET是基于一系列公开的标准的,一些企业组织的开发者开发了Mono项目,能让.NET可以运行在非微软平台上。

  现在由于Novell公司的大力支持,Mono项目这些年发展得相当迅速,它不但能让.NET跑在非微软的平台上,也支持在LINUX上运行Sliverlight技术(目前代号为Monnlight),甚至开始研究在使用C#语言去编写iPhone上的应用。

  可以到Mono的主页上去查看更多的相关信息,除此之外还可以去下载Mono专门为Visual Studio开发的插件工具。

  NAnt

  无论是JAVA还是.NET的开发者对代码的编译部署过程都是十分熟悉的,这个过程随着工程项目变得越来越复杂,从而也会耗费不少时间。为了应对这一问题,开发者James Davidson编写了ANT这一自动构建工具,它在JAVA开发者社区阵营中开始应用得越来越普遍,不久,NET阵营中的NANT项目也随之诞生。使用NANT,你可以建立构建脚本,不论是执行单元测试还是创建文档等其他.NET的构建周期,都可以自动执行这些脚本。

  NHibernate

  尽管在软件开发中,关系数据库的应用是很普遍了,但开发者和数据库之间还是存在一些壁垒。问题关键在于如何高效地在应用和数据库之间以各自支持的格式转换数据。开发者尽了很大的努力创造了很多方便转换的工具,其中最著名的是象Hibernate这样的对象关系映射框架(ORM)

  .NET开发者在处理ORM方面有NHibernate这样的工具,自从2005年它出现后,广为受到开发者的欢迎。NHibernate能完成.NET开发者面对的大量枯燥的数据日常操作,不仅在映射应用的模型到数据表上很有作用,而且能根据预先定义好的数据模型去产生表的模型定义。

  NHibernate的网站上提供了大量的有用的资源,能帮助你去了解这个强大的ORM解决方案框架。

  小结

  如果你是.NET开发者而且还没开始进入庞大并且日益发展的开源阵营的话,那么你应该去看看了。花点时间去研究本文提到的几个开源项目,我保证你会马上看到生产效率的提高的,有可能这还会引领你去向开源社区贡献你自己的开源项目呢,如果你使用了本文没提到的开源项目工具,可以在评论中告诉我。
3
3
分享到:
评论
2 楼 sentryward 2010-09-18  
老实说,没用过几个。用过的都觉得不行。orm,还是喜欢subsonic
1 楼 kimmking 2010-09-07  
对NHibernate的上榜表示怀疑。

spring.net和castle,感觉都要比它靠前。

相关推荐

    微软开源ASP.NET MVC项目

    ASP.NET MVC是微软开发的一个开源Web应用...通过研究这个开源项目,开发者不仅可以掌握ASP.NET MVC的基本使用,还能了解到微软的开发实践和最佳范例,这对于提升Web开发技能和理解现代Web应用的构建方式非常有帮助。

    Discuz开源论坛.NET版

    Discuz开源论坛.NET版是一款基于.NET技术构建的社区论坛软件,它为用户提供了丰富的功能和高度的可定制性。Discuz作为一个知名的社区平台,一直以来都以其稳定性和易用性受到广大用户的喜爱。将Discuz移植到.NET平台...

    ASP.NET开源OA代码.7z

    ASP.NET开源OA代码是基于微软的ASP.NET框架开发的一款办公自动化系统,主要针对.Net4.0或.Net4.8框架进行设计。这个系统的源代码开放,允许开发者进行深入研究、定制化开发,甚至构建自己的企业级办公解决方案。OA...

    asp.net mvc项目源码

    ASP.NET MVC是一个强大的框架,用于构建可维护的、高性能的Web应用程序。...此外,你还能学习到项目组织结构、解决方案管理、代码签名等方面的知识,这些都是成为一名专业ASP.NET开发者所必需的技能。

    开源:ASP.NET MVC+EF6+Bootstrap开发框架

    例如,ASP.NET MVC、Entity Framework等项目现已成为开源项目,托管在GitHub上,开发者可以参与其中,提交代码改进或报告问题。 【应用场景】 这个开源框架适用于各种业务管理系统,包括OA(办公自动化)、ERP...

    .net 开源cms.zip

    .NET开源CMS,全称为“.NET开源内容管理系统”,是基于微软的.NET框架开发的,主要用于构建网站和应用程序的软件系统。这种CMS允许用户通过图形化的用户界面进行内容的创建、管理和发布,而无需深入理解底层的编程...

    ASP.Net开源博客系统

    总的来说,ASP.NET开源博客系统是一个集成了许多ASP.NET特性和最佳实践的项目,适合初学者和有经验的开发者用来提升技能,同时也为用户提供了一个功能完善的博客平台。通过深入研究和参与这个项目,你不仅可以学习到...

    asp.net mvc开源博客平台(Oxite源码)

    Oxite是微软发布的asp.net mvc开源博客平台,供asp.net mvc开发者学习研究! Oxite是一种具有可拓展性的、标准兼容的内容管理系统,旨在支持博客或更大型的网 站,能支持广播、引用通告、匿名或验证评论、个人全球...

    GMap.NET开源项目可以运行

    GMap.NET是一个强大的开源项目,专门用于在.NET框架下实现地图功能。这个项目不仅支持运行,还能帮助开发者从多种来源,如Google Maps和Yahoo Maps,下载地图数据并存储到本地,使得用户即使在没有网络连接的情况下...

    LibY!Mail:.NET面向对象的封装和Yahoo!访问库邮件-开源

    Mail是一个针对.NET平台的开源库,其主要功能是提供面向对象的封装,使得开发者能够更加便捷地访问和操作Yahoo!的邮件服务。这个库的诞生旨在简化Web应用程序开发过程中与邮件服务的交互,避免了开发者需要深入理解...

    ASP.NET 微软开源小案例

    通过这个开源小案例,学习者不仅可以深入理解ASP.NET的核心概念,还能了解到实际项目中的最佳实践和常见问题解决方案。在实践中,你可以逐步掌握从设计到实现,再到调试和优化的全过程,从而提升你的Web开发能力。

    .Net开源流程引擎RoadFlow最新版(全部源码)

    .Net开源流程引擎RoadFlow是一款高效、灵活的流程管理工具,专为.NET开发者设计,提供了完整的源代码,方便开发者进行二次开发和定制。该引擎以其强大的功能和易用性,在企业信息化建设中扮演着重要的角色。 一、...

    iNethinkCMS开源.NET系统,完整后台

    iNethinkCMS是一款基于.NET框架的开源内容管理系统(CMS),专为构建高效、可扩展的网站和应用程序而设计。这个系统提供了完整的后台管理界面,允许开发者和管理员轻松地进行内容发布、页面布局定制以及网站功能配置...

    基于asp.net+Web+mvc4.0 EasyUI 最新 权限管理 开源 MES建材管理系统源码

    综合以上信息,这个开源项目提供了一个完整的MES建材管理系统,开发者可以通过研究源码学习如何在asp.net环境下利用MVC4.0框架和EasyUI进行Web应用开发,同时了解权限管理和建材管理的业务逻辑。系统设计遵循了MVC...

    ASP.NET源码——[博客空间]BlogEngine.NET(开源博客系统) v1.5 源码版.zip

    【博客空间】BlogEngine.NET是基于ASP.NET技术的开源博客系统,版本v1.5的源码提供了开发者深入了解和自定义博客平台的机会。这个源码版本不仅为个人博客提供了强大的功能,同时也适合开发者用于学习和扩展ASP.NET...

    ASP.NET-[电子商务]易想.NET免费开源商城仿当当网版V2.41.411.zip

    9. **开源与社区支持**:作为开源项目,易想.NET商城系统拥有活跃的开发者社区,提供代码分享、问题解答和技术交流,促进系统的持续改进和升级。 10. **版本迭代**:V2.41.411版本的更新可能包含性能优化、新功能...

    MvcContrib分离ASP.NET+MVC项目源码

    MvcContrib 是一个针对 ASP.NET MVC 框架的开源扩展库,它提供了许多额外的功能和工具,以增强和简化开发过程。本项目源码的分离旨在帮助开发者更好地理解和使用 MvcContrib 中的各项功能,同时便于在自己的 ASP.NET...

    SunnyUI.Net, 基于 C# .Net WinForm 开源控件库、工具类库、扩展类库、多页面开发框架

    SunnyUI.Net是一款针对C# .Net WinForm平台设计的开源控件库,它提供了丰富的UI元素和实用的工具类库,旨在简化Windows桌面应用程序的开发工作,提高开发效率。这款框架不仅包含了基础的控件扩展,还集成了多页面...

    基于asp.net mvc的开源网站管理系统

    【标题】"基于asp.net mvc的开源网站管理系统"是一个以微软的ASP.NET MVC框架为核心技术,用于构建高效、可扩展的网站管理平台的开源项目。ASP.NET MVC是一种模型-视图-控制器(Model-View-Controller)架构,它允许...

    ReoGrid C# 和 VB.net 开源免费表格控件 最新版v2.1

    ReoGrid是一款强大的开源免费表格控件,专为.NET开发者设计,支持C#和VB.NET语言。这款控件以其精美的界面和丰富的功能在开发领域中受到广泛关注。它旨在为.NET应用程序提供灵活、高效的电子表格解决方案,使得...

Global site tag (gtag.js) - Google Analytics