標籤:

如何看待微軟宣布.NET徹底開源和跨平台?

.NET Core is Open Source

Microsoft Takes .NET Open Source And Cross-Platform


對於普通用戶來說,短期內意義不大。

這次微軟開源的部分只是.NET Core,也就是CLR核心的那部分東西,包括GC、JIT編譯器、程序集載入器(Assembly Loader)等等。

最多,以後再加上基於.NET的伺服器技術,也就是http://ASP.NET。有沒有WCF呢?不知道。

Immo Landwerth也說了,不包括客戶端技術,如WPF和WinForm,以及Silverlight。

也就是說,微軟這次宣布開源的這套東西,是Mono一直以來都已經有了的東西。只不過現在我們可以用到官方的實現版本,可能更穩定,可能更高效,但都只是可能,用過才知道。

從中遠期來說,整個.NET Framework完全開源也不是沒有可能。其實Mono相比.NET Framework,最大的缺口也就是WPF了。聯繫到今天微軟發布的The Roadmap for WPF,WPF的開源將是對移動設備前端開發的一個顛覆(當然也有可能我過於高估了WPF和大家對它的熱情)。

至於免費版的Visual Studio,發布Mac版和Linux版的可能性不大,畢竟這麼龐大的一個東西,要移植的話UI部分基本要全部重寫(或者等全部WPF化了然後開源WPF?),太傷筋動骨。社區版Visual Studio 2013的跨平台功能(對iOS和Android的支持)是通過Xamarin的Starter Edition實現的,所以不要想太多。


我覺得這是遲早的事。顯然把同一個操作系統放到所有可能的地方去是不可能的,更加容易做的事情是把同一個庫放到所有可能的地方去,然後在少數幾個好用的操作系統上實現Visual Studio。


利國利民,大清早的好消息。


這是微軟近年來一系列動作的總結,也是為了適應雲計算作出的改變。

為什麼說是一系列動作的總結呢?因為.NET Framework的源代碼其實早就開放了,下一代的http://ASP.NET即vNEXT一開始就是在GitHub上開源的。而且微軟已經非常明確的為Mono、Unity3D等公司提供資金和技術上的協助了。所以開源和跨平台已經是呼之欲出甚至是按部就班的事情,這次宣布和Core的開源只是按部就班的一個步驟而已。

所以更值得關注的是後續微軟會在通過Mono提供多少支持,一些Windows平台依賴的API如何處理,的確對於雲計算來說,下面的操作系統到底是啥其實會越來越不重要,搶佔其上面的應用運行和開發平台才是王道。


今天各大網站都在刷屏,.NET竟然開源了。竟然可以用史上最強IDE VisualStudio寫安卓程序了。這一把Linux看作最大威脅的公司終於變得更加開放。微軟永遠也想不到1991年誕生的Linux會在10年後揚名天下,20年後統治伺服器市場!最終連同UNIX-Like衍生系列倒逼微軟跨平台開放!


說明微軟也意識到日漸強大的競爭對手了。

讓Linux程序員有機會接觸一下c煞破 再怎麼說也是一件振奮人心的事兒


以前Windows獨霸的時候不這樣子的。


好酷啊

visual studio還提供免費版本呢。這真的好酷啊,作為一個iOS程序員,偶爾需要寫點csharp桌面應用的人來說,在windows電腦壞了的情況下,是不是我就可以用Mac來寫了啊,再也不用兩台電腦來回切換了吧。i love csharp!!

我決定我那台壞了的windows電腦不修了,等著微軟發布os x版本的visual studio(也不知道要等到什麼時候)。歐耶! 好棒!


噴子們又少一個黑.net的理由。


謹慎樂觀。

畢竟還需要一些時間才行。不過至少以後和Java技術做對比時,跨平台這個軟肋應該可以逐步消解掉。

不過我想說的是,其實微軟在設計.NET類庫時,有很多設計顯得太小家子氣了,非常不夠開放。

比如想為Java提供一個JDBC驅動,有一個JDBC規範指導該怎樣去設計/實現自己的JDBC驅動。

但是在.NET上面,http://ADO.NET看上去牛掰轟轟啊,但是一點都不開放啊!!看看PostgreSQL的Npgsql 以及MySQL的mysql/connector,裡面無數坑啊!!都是因為缺乏一個開放的標準導致的啊!!不過,以後可能會因為.NET開源,坑會減少一點。但無論怎麼修BUG都彌補不了先天性的設計缺陷啊。你們好歹也曾經搞過ODBC規範啊,為毛就不能在當初搞.NET時仔細設計幾個規範出來呢?

靜觀後面如何演變吧。


遲早的事情,不是所有的人都用的起windows的,而且現在版權打的這麼厲害。

現在移動終端使用量的興起和強勢,為了進一步推廣windows相關市場,也只能只能走這一步。

不過net的框架那麼大,本身內部的bug也不少

相對於java的開源,net的標準很多標準都是利用window自身產品的,內部的封閉性可能也較強,對於跨平台的兼容性而言可能需要很長時間的修正


推薦閱讀:

開源鏡像站的組織和維護是純公益的嗎?有沒有什麼利益呢?
Arduino 相對於其他開源硬體有哪些優勢?
Source-to-source compiler 有什麼用?
推薦些使用單元測試的開源項目?

TAG:開源 | NET | C# |