微軟開源WinObjC,為Visual Studio/Windows提供Objective-C開發環境
在今年早些時候舉行的Build 2015大會上,微軟宣布將發布工具幫助Android和iOS開發人員將應用移植到Windows平臺。近日,微軟發布了 Windows Bridge for iOS (又稱為WinObjC)預覽版本(先前的Islandwood項目)。
WinObjC提供了一個面向Visual Studio/Windows的Objective-C開發環境,允許iOS開發人員使用現有的Objective-C代碼和技能創建 Windows 10和Windows 8.1應用。據Windows Bridge for iOS項目經理Salmaan Ahmed 介紹 ,WinObjC包含如下四個部分:
- Objective-C編譯器 :負責將Objective-C代碼編譯成原生的Universal Windows應用,預計會在今年秋天作為Visual Studio 2015更新的一部分推出;
- Objective-C運行時 :提供Objective-C語言特性;
- iOS API頭文件/庫 :基于Objective-C基礎API構建,廣泛兼容iOS API;
- Visual Studio IDE集成 :提供一款工具,將Xcode項目導入Windows開發工具(Visual Studio 2015)和SDK。
按照Salmaan的說法,WinObjC的目標不是簡單地在Windows上運行iOS應用,而是使iOS開發人員可以充分利用現有的Objective-C代碼和知識編寫優秀的Windows應用。為此,其架構和設計遵循如下三個原則:
- 提供對Windows API的完全訪問 :能夠使iOS開發人員可以很容易地在Objective-C代碼中使用Windows API;
- 兼容iOS :能夠使iOS開發人員盡可能合理地重用現有的Objective-C代碼;
- 無沙箱 :iOS和Windows API可以一起使用。
WinObjC是作為一個開源項目發布的,托管在 GitHub 上,遵循MIT許可協議。不過,Objective-C編譯器并不開源。據來自微軟工程部門的Kevin Gallo 介紹 :
今天發布的版本無疑還處于積極開發狀態——Build大會上描述的部分特性還沒有準備好或者尚處于早期階段。無論如何,我們非常希望對此有興趣和感到好奇的開發人員了解iOS Bridge,將你們構建應用時的需求與我們正在構建的東西進行比較。
目前,iOS Bridge僅支持針對x86和x64處理器架構構建的Windows 8.1和Windows 10應用。我們很快會增加編譯器優化,并提供ARM支持,即增加移動支持。
雖然正在開發之中,但WinObjC已經包含了 UIKit庫 、 QuartzCore 和 CoreAudio 音頻框架的部分功能。今年晚些時候,微軟會發布一個更穩定的版本。
另外,Windows Bridge for Android(又稱為Astoria項目)目前尚處于技術預覽階段,只有受到邀請的開發人員才能參與。公開測試版本預計會在今年秋天發布。希望提前試用 Windows Bridge for Android的開發人員,可以 點此注冊 。