全站文章 iT邦幫忙
iThome Online提供免費電子報,現在就訂,最新IT訊息每日寄達。

iThome 每日新聞報
iThome 產品技術報
加入iThome Online會員,立即使用討論區、Blog等服務。

免費加入會員
登入 / 登出
管理會員帳號
忘記帳號密碼
聯絡客服
訂閱周刊
讀者服務
13' E政府專刊no.7(48)
13' iTcloud No.3(47)
12' E政府專刊no.6(46)
12' 個資法專刊No2(45)
12' iTcloud No.2(44)
12' e政府專刊No.5(43)
12' 個資法專刊(42)
11' CIO專刊(41)
11' e教育專刊No.3 (40)
11' e政府專刊No.4 (39)
11'iTcloud專刊(38)
10' e教育專刊No.2 (37)
10'e政府專刊No.3 (36)
09'e政府專刊No.2 (35)
09'e教育專刊(34)
09'e政府專刊(33)
08'企業資安專刊-端點安全防護(32)
08'企業採購情報誌(31)
07'資訊安全技術應用專刊(30)
07' 新世代資料中心專刊(29)
07'企業資安技術應用專刊(28)
企業採購情報誌'06冬季號(27)
微軟解放編譯器
文/吳其勳 (iThome電腦報總編輯) 2013-12-30
分享到facebook
製造工具機的改變,帶動了生產方式的改變。如Roslyn這般編譯器的重構,或許有可能在未來掀起軟體改造的威力。

「解放」用在微軟的身上,對許多人而言根本就是天方夜譚。甚至有不少人認為系統封閉、專屬格式等控制軟體生態圈的作法,是微軟鞏固帝國壯大的主要原因。

然而,開放是文明發展不可逆的趨勢,就連集權國家也難以抵擋排山倒海而來的開放浪潮。縱使當今依然存在「登得上月球,出不了網路長城。」的荒謬局面,但網路已經打破國界的定義,這股力量任誰都擋不住。

國家如此,商業亦然。在資訊科技的世界,再大的公司都抵擋不住雲端掀起的開放浪潮。因為雲端不是一個產品,而是許多服務組合而成的一個環境,這種分散架構的特性,徹底打破了廠商原本界定好的生態圈與市場規則。

Linux帶動的開放原始碼運動,曾經逼得微軟不得不擁抱開源,但都不曾像雲端這樣帶來全面開放的壓力。在雲端的世界,沒有任何一家廠商能夠隻手控制整個雲的生態圈。要飛向雲端,一開始就必須展開雙臂。微軟也沒辦法例外。

在軟體開發方面,微軟一方面軟體開發團隊調整開發方法,採取能夠快速回應雲端服務的敏捷式開發方式,另一方面則支援更多的開放原始碼開發工具及Linux相關的開源作業環境,例如陸續對於JQuery、Node.js、Git等新興網站開源技術的支援。

緊接著,Visual Studio開發工具也開始調整定位。如本期我們採訪微軟總部測試部門總經理ShankuNiyogi所談到的,Visual Studio正朝開發服務(Development as a Service,DaaS)的方向發展,未來的定位不再只是一個開發工具,而是提供開發服務。

開發服務,實在是一組看得懂卻什麼也沒看懂的四個大字。且讓我們先來看Visual Studio邁向開發服務的第一步──Visual Studio Online。

簡單來說,這就是在雲端實現Visual Studio與Team Foundation Server的整套服務。亦即程式開發、程式碼除錯、功能測試及程式部署,整個軟體開發流程與專案管理,都可在雲端平臺進行。

開發環境與流程管理由內部伺服器搬上雲端,開發者的電腦不必安裝開發工具,團隊成員只要能夠上網,隨時隨地都可以寫程式、除錯、測試、管理專案進度等等。此一型式上的改變,確實會帶給開發團隊滿大的幫助。但是,我們心中不免有所疑惑:難道微軟所謂的開發工具轉型為開發服務,就只是把開發環境搬上雲端而已嗎?

這幾天Visual Studio產品開發團隊公布的Roslyn研發結果,在某個程度上解答了上述的疑問。微軟在2011年對外揭露Roslyn研發專案,目的是要打造編譯器服務(Compiler as a Service)。沒錯,這年頭似乎所有東西加上服務兩字都行得通,那麼把編譯器加上服務,豈非把編譯器放到雲端上來執行嗎?

其實,微軟在Roslyn專案有更大的企圖心,這次是要徹底解構編譯器,把編譯器這個黑盒子打開,讓大家可以控制編譯器,而不是為編譯器所控制。簡單來說,就是解放編譯器。

編譯器一直是個神奇的黑盒子,你把程式碼交給它,這個神奇盒子就會產出電腦可以執行的程式;至於神秘的配方,一直掌握在魔術師──編譯器開發者的手上。所以,程式設計師想要提升程式的效率,就只能利用程式碼分析工具來調整程式碼。然而,此一方法最終就會碰到編譯器這個天花板,而編譯器這個黑盒子被魔術師所把持著。

有別於控制神秘黑盒子的作法,微軟的Roslyn專案則是打開黑盒子,把編譯器的功能重構,依其功能拆解成大大小小的API,讓開發者可以控制編譯器。例如,平行運算專家可以開發優化編譯器的工具,開發者就可以獲得效能更好的平行運算程式。

如果Roslyn的效能禁得起考驗,那麼它將有可能從編譯器這樣的底層,整個顛覆傳統的作法。例如你可以在程式執行的同時,透過API修改變數,編譯器接著即時產出程式,新的修改立刻就能執行。這將使得C#、VB這樣的程式語言,越來越接近網站動態程式的特性。

製造工具機的改變,帶動了生產方式的改變,進而讓iPhone這樣的產品得以問市。如Roslyn這般編譯器的重構,或許有可能在未來掀起軟體改造的威力。

吳其勳/iThome電腦報周刊總編輯

分享到facebook

2014資安趨勢研討會
更多研討會
▼ ADVERTISEMENT ▼
▲ ADVERTISEMENT ▲

電週文化事業版權所有、轉載必究 •Copyright © iThome | 刊登廣告授權服務服務信箱隱私權聲明與會員使用條款關於iThome