`

百万开发者拥戴!七大.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,感觉都要比它靠前。

相关推荐

    .net 开源项目 DotNetNuke

    这个项目自2001年开始,已经成为.NET平台上最受欢迎的开源平台之一,广泛应用于企业网站、社区网站、电子商务平台等场景。 一、DotNetNuke概述 DotNetNuke是一个模块化的框架,它允许开发者轻松地创建、部署和管理...

    23个.NET开源项目

    ### 23个.NET开源项目:深度解析与应用价值 ...总体而言,这23个.NET开源项目覆盖了从测试、数据访问、架构设计到工具库的各个方面,为.NET开发者提供了丰富的资源和工具,极大地促进了.NET生态的繁荣和发展。

    ASP.NET开源OA代码.7z

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

    BugNet .Net开源项目(C#版)

    总的来说,通过深入探究BugNet这个开源项目,开发者不仅可以掌握C#和ASP.NET MVC的实际应用,还能了解到软件开发中的缺陷管理流程,以及项目构建、部署和维护的相关知识。对于想要提升.Net技术栈的开发者来说,这是...

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

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

    .net 开源cms.zip

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

    .Net开源CMS

    .NET开源CMS是一款基于微软的.NET框架构建的开源内容管理系统,专为各类网站设计,包括但不限于企业网站、电子商务平台、新闻资讯站点等。它的核心优势在于提供了丰富的功能模块和高度的可扩展性,允许开发者根据...

    CMS .NET 开源项目_C#门户网站cms程序.rar

    【标题】"CMS .NET 开源项目_C#门户网站cms程序.rar"揭示了这是一个基于.NET框架,采用C#语言开发的开源内容管理系统(CMS),主要用于构建门户网站。CMS是Content Management System的缩写,它允许非技术用户通过...

    ASP.Net开源博客系统

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

    C# 大型OA 开源

    路德软件 兼承 “ 开放 分享 进步 ” 的原则,对 RoadFlow 工作流引擎开源,希望与广大工作流开发者共同进步! 平台基于 .Net 的 B/S 架构开发,需要 .Net Framework 4.0 以上版本和 IIS6.0 以上运行环境。数据库...

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

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

    C#代码项目转换VB.NET项目代码(可整个项目转换)

    要实现整个项目的转换,可以利用专门的转换工具,例如使用SharpDevelop,这是一个开源的集成开发环境(IDE),支持多种.NET语言,包括C#和VB.NET。在提供的压缩包文件中,"SharpDevelop_3.2.1.6466_Setup.msi"是...

    ASP.NET完整项目源代码

    这些项目源代码提供了一个实践性的学习平台,帮助开发者深入理解ASP.NET的各种技术和最佳实践,无论是初学者还是经验丰富的开发者,都能从中获益。通过研究这些项目,你可以学习到如何组织代码结构、如何处理用户...

    MailSystem.NET 邮件 系统 开源 代码 WEB EMAIL 桌面 应用 C# asp.net

    MailSystem.NET 是一款基于C#语言开发的开源邮件系统,其特色在于同时提供了WEB版本和桌面应用,为用户提供了灵活多样的访问方式。该系统的核心功能包括对POP3、SMTP和IMAP协议的支持,使得用户能够方便地进行邮件的...

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

    【标题】:“基于asp.net mvc的开源网站管理系统”是一个以微软的ASP.NET MVC框架为核心技术构建的开放源代码的网站管理平台。该系统旨在提供一个灵活、可扩展且易于维护的解决方案,使得开发者和非技术人员能够高效...

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

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

    博客开源程序ASP.NET

    博客开源程序ASP.NET是一个基于微软的ASP.NET技术构建的开源博客平台。ASP.NET是Microsoft .NET框架的一部分,专为Web应用程序开发设计,提供了一种高效、高性能的开发环境,允许开发者使用诸如C#或VB.NET等强类型...

    ASP.NET源码——[博客空间]Subtext Blog v1.95中文版(.NET2.0开源).zip

    10. **源代码开放**:作为一个开源项目,Subtext的源代码可供开发者研究和定制,可以深入了解ASP.NET的开发实践。 通过学习和分析Subtext Blog的源码,开发者可以深入理解ASP.NET的MVC架构、数据库交互、用户身份...

    .net B2B商城 开源未打包

    通过分析和研究这个.NET B2B商城的开源源码,开发者不仅可以提升自己的.NET技能,还可以了解电子商务系统的架构和最佳实践,为实际项目提供宝贵的参考。同时,开源社区的参与和贡献也是提升个人影响力和技术水平的...

    简易浏览器3.0(C#+VB.NET完全开源)

    总的来说,简易浏览器3.0(C#+VB.NET完全开源)为开发者提供了一个学习和实践浏览器开发的平台,同时也为用户提供了一个简洁、快速的浏览工具。通过深入研究其源代码,可以掌握网络编程、UI设计、多线程处理以及安全...

Global site tag (gtag.js) - Google Analytics