???? 辣椒、龍舌蘭酒、大沿尖頂帽……墨西哥在人們心目中,是一副熱辣辣火烈烈的形象。早前兩部電影,Man on Fire和City of God,淋漓盡致地把墨西哥地底下一股邪火展現(xiàn)在世人面前——那地方,是天真、直白、充滿詩意和理想,而且暴烈的,一如獸類盤踞的伊甸園。
???? 所以,當(dāng)一些杰出而理想化的IT技術(shù)人物漸次在這塊土地上嶄露頭角,世界并不應(yīng)感到吃驚——Miguel de Icaza就是其中一位。他推動了Gnome這一著名Linux桌面系統(tǒng)的產(chǎn)生、創(chuàng)建Ximian公司(后被Novell收購),在開源世界里,是一個成功地引入商業(yè)概念的奇人。
???? 2001年,Miguel de Icaza和朋友一起開啟了Mono,基于UNIX的.NET Framework開發(fā)平臺實現(xiàn)。
???? .NET是微軟希望借以打擊Java的重要武器。.NET與Java相比(拋卻因成熟度帶來的差異不談,那是可以彌補的),前者跨語言而不跨平臺、后者跨平臺而不跨語言。在跨平臺支持方面,.NET先天不足。當(dāng)然這與微軟“捆綁操作系統(tǒng)”戰(zhàn)略密不可分——既有好處,也有壞處。然而無論如何.NET要比Java晚生多年,在某些方面絕對要比Java具有更多優(yōu)勢,也從Java學(xué)習(xí)了許多優(yōu)秀的特性。所以,對.NET發(fā)生極大興趣的,不光是原來的微軟開發(fā)者,還包括Miguel de Icaza這樣的Linux擁躉。
???? Mono在西班牙語中的意思,是“猴子”。這個名字讓人想起墨西哥人火辣直白的性格,那與《西游記》中孫悟空的野性難馴別無二致。Mono項目野心極大,它包括C#編譯器、CLR引擎、兼容.NET Framework的類庫(支持ADO.NET和ASP.NET等)、第三方類庫Gtk#(gtk+工具集的.NET實現(xiàn))、甚至還有漂亮的IDE、調(diào)試工具和文檔瀏覽器。
???? Mono的主要組成部分是:
- 公共語言架構(gòu)(CLI)虛擬機,包括類裝載器、Just-in-time編譯器和運行時垃圾回收機制;
- 基礎(chǔ)類庫,運行于CLR之上的任何語言均可使用,包括兼容.NET的類庫和Mono獨有類庫。
- C#語言編譯器。未來將實現(xiàn)基于CLR的其他編譯器。
???? Mono已經(jīng)發(fā)布了1.0版本。在這個版本中,最基礎(chǔ)的部分已經(jīng)實現(xiàn),包括:
- C#編譯器??
- VM(虛擬機),包括JIT和預(yù)編譯器
- IL assembler、disassembler
- 開發(fā)和安全工具
- 核心庫:mscorlib、System、System.XML
- System.Data和Mono database providers
- System.Web:Web應(yīng)用平臺和Apache集成模塊
- System.Web.Services客戶端和服務(wù)器支持
- System.Drawing
- System.DirectoryServices
- JIT支持: x86、SPARC和PPC架構(gòu)
- 通過IKVM實現(xiàn)Java集成
- 運行時的嵌入式界面
???? Mono將緊隨Microsoft,在2005年發(fā)布支持Whidbey(.NET 2.0)的版本,于2006年發(fā)布支持WinFX的版本。
???? 從目前的狀況來看,Mono還遠未成熟。盡管已經(jīng)有一些站點在Mono之上搭建,但總體上并沒有為大多數(shù)人所接受。這里面既有效率效率的原因,也有兼容度的原因。但無論如何,一只天不怕地不怕的石猴已經(jīng)橫空出世了。
???? 事實上Microsoft也有自己的.NET UNIX實現(xiàn):Rotor,但我相信他們不會很快在戰(zhàn)略層面上支持跨平臺的.NET Framework。依照微軟一貫的做法,類似Mono這樣的嘗試,也不會進入被打擊之列——且看你能做出什么東西,再做打算。
???? Mono,這只初入人間的猴子,是否能夠成長為齊天大圣?Miguel de Icaza顯然有此雄心,一切只能讓時間來驗證了。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=72182
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
