百萬開發者擁戴!七大.NET著名開源項目

百萬開發者擁戴!七大.NET著名開源項目

 2010年09月07日00:05 it168網站原創 作者:IT168 jackyrong 編輯:胡銘婭  原文鏈接 http://tech.it168.com/a2010/0906/1099/000001099775_all.shtml

 

    【IT168 專稿】儘管過了相當長的時間,花費了不少資源,微軟和.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/.net/net_asp/miscellaneous/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開發者而且還沒開始進入龐大並且日益發展的開源陣營的話,那麼你應該去看看了。花點時間去研究本文提到的幾個開源項目,我保證你會馬上看到生產效率的提高的,有可能這還會引領你去向開源社區貢獻你自己的開源項目呢,如果你使用了本文沒提到的開源項目工具,可以在評論中告訴我。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章