<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    空間站

    北極心空

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      15 Posts :: 393 Stories :: 160 Comments :: 0 Trackbacks
    我繼續寫這個Post的時候,我專門到Mono的站點下載了Mono的運行時和類庫的完整源代碼。用來兩天的時間閱讀了一些類庫如ASP.NET,XML等等的源代碼,必須承認,通過這兩天源代碼的閱讀讓我原先的一些想法有稍微的改變。

    從微軟的戰略來看,是希望將用戶毫無條件的鎖定在Windows操作系統之上,有人的地方就有計算機,有計算機的地方就有Windows。這是微軟多年來傾其全力的追逐的夢想。在桌面操作系統上除了Apple的茍延殘喘之外,還有一部分反微軟斗士使用的基于Linux的桌面系統之外,其他無一不是微軟帝國在統治。也許這里有人會攻擊我對于Linux的看法,也不止一次的聽到有人對我說“你根本不懂Linux”,所以一切的評論都是不夠公允的。不曾經懷疑過Linux在服務器市場上的沖擊力,也正是在服務器領域的成就讓芬蘭大學生Linus Torvalds的無心之作在短短的10多年內成為最流行的服務器操作系統,但是在桌面領域呢?你可以告訴我已經有很好的操作系統,包括我們國內那幾家扛著“振興民族軟件產業”大旗的企業,從國家拿走大筆大筆的錢,也做出了一個表面看起來像模像樣的“為中國人設計”的Linux操作系統,但是有多少人真正在用,明眼人都會看明白的。當然也有人會罵,用著D版的Windows在網上沖浪,然后憤恨不平的陳述微軟霸權。

    作為微軟,總會盡可能的將用戶鎖定在Windows之上,那么.NET也不會例外,為了確保不允許被“拷貝”到其他操作系統之上,在類庫的設計上正如上面提到的會采用“底層API”。盡管微軟也提交了CLI,提交了C# Spec,但是遵循了ECMA標準的C#和微軟自己的標準有多少區別嗎?

    有,正因為標準,所以有了Mono這樣東西的出現

    沒有,因為Mono僅僅是Mono,而不是.NET。

    ?

    你可以質疑我這樣自相矛盾的回答,也可以說我不懂Linux,更加可以說我不了解Mono。我的朋友Kaneboy告訴我越來越發現Mono是一個好東西,等我閱讀了部分的源代碼之后我也認為Mono是一個好東西,但是它是.NET嗎?也許你可以從我下面的文字中找到一些答案。

    如果你是一個.NET架構師,那么我建議你一定要去閱讀Mono的源代碼,因為Mono可以告訴你很多你之前不可能知道的東西,你會看到很多你一直想看到卻沒有機會看到的東西,就比如ASP.NET、ADO.NET。相信在VS.NET或者Web Matrix的幫助下你能夠寫出很眩的頁面,能夠寫出很漂亮的控件,也會感覺到比之前的ASP更加得心應手,但是你會發現一些東西你始終無法突破,比如很多文檔會告訴你ASP.NET Page對象模型,會告訴你頁面的在整個HttpApplication管道化過程中的遷移,會告訴你可以啟用Session,可以啟用片斷緩存,但是始終無法明白Web應用中Session的底層是如何設計和考慮的,如何真正有效的提高你的緩存設計策略。一切盡在Mono,相信那些源代碼能夠解開你一些困撓許久的疑惑。

    但是,目前的Mono僅僅是在跟Microsoft在走,如果你去閱讀過源代碼,然后也用Reflector看過微軟自身對于類庫的實現,你會發現作為追隨者真的很辛苦,對于一些核心的實現,微軟僅僅是對于原有的技術做了一個包裝,然后通過.NET統一編程接口,而Mono卻需要一切從零開始。前文提到了微軟會不遺余力的將所有技術鎖定在Windows操作系統之上,那么從這個角度來說他絕對不運行有一個同樣的產品出現在非自己統計的操作系統平臺上,對于Mono,也如同對于Application Server的策略是一致的,因為微軟比誰都明白,如果讓框架運行時(CLR)和應用服務器獨立于操作系統,那么Windows就失去了最后的技術壁壘,不知道大家是否記得當年的Visual J++,為了將Java鎖定到Windows,微軟開發了WFC,并且允許使用Visual J++開發COM組件,Sun后來告發了微軟一把,理由很簡單,因為微軟的“險惡用心”和破壞了Java世界的“純潔性”,平心而論,如果忽略微軟對于Java的改動,甚至僅僅將Visual J++當著一門新的語言(比如Pre-C#,當然了,這是我在胡扯),依托于WFC的強大,作為Anders加盟微軟之后打造的第一個產品,Visual J++在windows開發上就我個人的感覺來看已經超越Visual Basic。

    從文化而言,Mono是一個自由斗士,它打破了.NET只能夠在Windows上運行的限制,同樣也幫忙微軟印證了.NET可以跨平臺。但是微軟真的系統跨平臺的.NET嗎?肯定不是的,如果所有的開發商都使用.NET開發,而.NET同樣可以運行于任何操作系統,那么Windows就不是唯一的選擇,開放源代碼、免費(這里提及的可能不是特別準確)的Linux會更加成為主流。如果你是商人,你將如何選擇?因此沒有任何一個理由讓微軟的.NET要去跨平臺,當然商業上標榜的跨平臺是另外一個策略問題了。

    鑒于上述,Mono注定是永遠的追隨者,1.1的框架還沒有在Mono下面完全實現,而.NET 2.0又快要推出,如果你稍微那么了解一點點的Whidbey(Visual Studio 2005的開發代號),你知道.NET 2.0相對于1.1已經改變很多很多,那么Mono究竟有多少力量能夠在時間上不被微軟甩開太遠。我這里沒有答案,也許誰也沒有。如果你是學習,那么有很多理由建議你去看看mono,如果是你研究,那么有更多的理由選擇Mono。如果你是一個商人或者架構師,要找出在商業上選擇Mono的理由確實很難,真的,很難……

    Mono only is mono,not .net never

    posted on 2006-12-13 12:55 蘆葦 閱讀(318) 評論(0)  編輯  收藏 所屬分類: 其他.NET
    主站蜘蛛池模板: 一级视频在线免费观看| 亚洲成在人线在线播放无码| 亚洲性无码av在线| 中文字幕亚洲男人的天堂网络| 亚洲gay片在线gv网站| eeuss免费影院| 99精品视频免费在线观看| 最近免费中文字幕4| 免费A级毛片无码A| 亚洲av不卡一区二区三区| 久久精品国产亚洲AV蜜臀色欲| 亚洲第一成年免费网站| 拍拍拍无挡视频免费观看1000| 2019中文字幕在线电影免费| 免费观看一级毛片| 亚洲人成在线播放网站| 亚洲人成影院在线高清| 无套内射无矿码免费看黄| 久久99热精品免费观看动漫| 成人免费视频一区二区三区| 中文字幕亚洲综合久久菠萝蜜| 亚洲成AV人综合在线观看| 理论秋霞在线看免费| 99视频精品全部免费观看| 国产精品四虎在线观看免费| 久久久青草青青亚洲国产免观| 亚洲情A成黄在线观看动漫软件| yellow视频免费看| 91成人免费在线视频| 亚洲一级特黄大片无码毛片| 亚洲一级毛片视频| 国产免费一级高清淫曰本片| 国产乱码免费卡1卡二卡3卡| 国产性爱在线观看亚洲黄色一级片 | 乱爱性全过程免费视频| 1000部国产成人免费视频| 丁香亚洲综合五月天婷婷| 亚洲精品不卡视频| 精品免费久久久久国产一区| 歪歪漫画在线观看官网免费阅读| 曰韩亚洲av人人夜夜澡人人爽|