Castle在“新.NET時代”將何去何從 DotNet頻道)

來源:互聯網
上載者:User
     國內的。NET開發人員相信對於Castle都不會陌生。Castle是針對。NET平台下的一個非常優秀的開源項目,從資料訪問架構   ORM到依賴注入容器,再到WEB層的MVC架構、AOP,基本包括了整個開發過程中的所有東西,為我們快速的構建企業級的應用程式提供了很好的服務。Castle在曆經好幾年、經過了3個RC版本之後,終於要發布1.0版本了。

    筆者對於Castle項目的研究也有很長一段時間,也寫過大量的Castle的文章。但是,隨著微軟“新。NET時代”的到來,Castle項目將會面臨一些尷尬,如何找到自己的定位、後續如何發展是Castle項目作者不得不考慮的一個問題。

    1.資料訪問ActiveRecord

    Castle中的ActiveRecord是一個輕量級的ORM組件,它在底層封裝了NHibernate.NHibernate是一個基於。Net,用於關聯式資料庫的對象持久化類庫,它是著名的Hibernate的。Net版本,採用xml設定檔進行關係的映射。在ActiveRecord中,則對這種方式進行了進一步的封裝,採用特性(Attribute)的方式進行映射。隨著微軟在。NET Framework 3.5中推出了自己的輕量級ORM——LINQ to SQL, ActiveRecord的處境變得有些尷尬,儘管有人會說LINQ to SQL目前只支援SQL Server,是的,但是LINQ強大的擴充性相信大家都看到了吧,現在LINQ對Oracle資料庫的介面已經開放,所以這點在不遠的將來一定會得到解決,在微軟的Entity Framework發布時對Oracle資料庫的LINQ支援一定沒問題。

    2.MVC架構MonoRail

    在07年的時候微軟發布了ASP.NET 3.5 Extentions的第一個CTP版本,其中最引人矚目就是ASP.NET MVC Framework.在這之前,Castle中的MonoRail可以說是。NET平台下最為著名的MVC架構。由於ASP.NET MVC Framework的出現,在。NET開發界引起了一場諸如“為什麼會出現ASP.NET平台下的MVC架構”,“MS MVC架構漩渦中的MonoRail未來”等的討論。的確,在微軟ASP.NET MVC Framework之後,MonoRail處於一個進退兩難的境地,Hamilton也說“MonoRail 2.0最終結果如何取決於MS MVC架構的實現。如果最終的MS MVC非常棒,並且提供了很多功能,我會考慮放棄MonoRail 2.0.如果MS MVC最終版不是那麼完美,缺少了必須實現的功能,那麼MonoRail 2.0可以複用MS MVC的基礎架構,以提供一些有價值的擴充”。但是有一點毋庸置疑那就是ASP.NET MVC Framework擁有的觀眾數量將是MonoRail無法達到的?

    3.依賴注入容器Windsor Container

    Windsor Container在Castle中的地位舉足輕重,相信有很多朋友都是通過它才開始學習Castle的,Windsor Container以其良好的設計,簡潔的配置很快贏得了開發人員的口碑。正當Castle經過了3個RC版本,準備發布1.0正式版時,微軟模式與實踐團隊在其團隊部落格中公布了微軟依賴注入容器的開發計劃,命名為Unity,並且將會把其他8個應用程式塊都移植到Unity之上。這對於Castle來說,無疑又是一個晴天霹靂。雖然在模式與實踐團隊目前發布的Unity CTP版本中,我們看到它的設計有些還是非常的醜陋,如建構函式注入和屬性注入等。但是有一點我們不得不承認,只要是微軟官方發布的產品,.NET開發人員都會去用,而且擁護程度遠遠超過開源項目。

    4.結束語

    過不了多久,Castle將會發布1.0版本了,在微軟LINQ、ASP.NET MVC Framework、Unity等產品的重重“包圍”下,Castle能夠找到一條自己的出路,在新發布的版本中,將會給我們帶來怎樣的驚喜,讓我們拭目以待吧。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.