Sneak Peek of Windows Bridge for iOS Now on GitHub
As of today, developers can access an early open source version of the Windows Bridge for iOS, designed to make it easier for Objective-C coders to build and run apps on Windows.
The bridge is part of Microsoft's effort to open up new development opportunities for users of its Visual Studio IDE, with separate projects for providing support for iOS, Android and Web code targeting the Universal Windows Platform (UWP) and Windows Store.
Formerly called Project Islandwood, the official iOS bridge won't happen until this fall, after new Visual Studio tooling is introduced in an update. In the meantime, in its new spirit of openness and expanding access to other technologies, Microsoft is providing early access to the code on GitHub under an MIT license.
"Given the ambition of the project, making it easy for iOS developers to build and run apps on Windows, it is important to note that today's release is clearly a work-in-progress -- some of the features demonstrated at Build are not yet ready or still in an early state," said Microsoft's Kevin Gallo in a blog post today.
Salmaan Ahmed, the project's program manager, said today's release only supports building apps targeting Windows 10 and Windows 8.1 on machines using x86 or x64 processors. More capabilities will be added, such as mobile support via ARM and compiler optimizations, Gallo said in his post.
In his own blog post today, Ahmed detailed the four main components of the bridge:
- Objective-C compiler: To enable most of the heavy lifting, Visual Studio will include a compiler that knows how to take Objective-C code and compile it into a native Universal Windows app. Microsoft initially will provide early drops of the compiler binary via GitHub (it's not open sourcing the compiler). The compiler will ship as part of the fall Visual Studio 2015 update.
- Objective-C runtime: The Objective-C runtime will provide language features like message dispatch, delegation and automatic reference counting.
- iOS API headers/libs: Building upon the Objective-C base APIs, Microsoft provides fairly broad iOS API compatibility. As developers work with the bridge and find unsupported APIs or those that could be improved, they are urged to provide contributions and comments.
- Visual Studio IDE integration: Tooling that imports Xcode project and ties into the Windows developer tools (Visual Studio 2015) and SDK.
Ahmed emphasized that the project is not a port for iOS apps. "Our goal with the iOS bridge has never been simply to run iOS apps on Windows," he said. "Rather, our goal is to help you write great Windows apps that use as much of your existing code and knowledge as possible. We will, of course, continue to work to expand our iOS compatibility, but it's important to note that there is much more you can do with the bridge."
The three core principles driving the project, he said, are: full Windows API access from within Objective-C code; iOS compatibility; and no sandboxing -- the respective OS APIs should work together.
From a more general perspective of the overarching Microsoft strategy, IDC analyst Al Hilwa said "Microsoft's move here illustrates that the only serious way to engage developers today is with open source. The Visual Studio team is clearly one of the lead groups at Microsoft in transforming how the giant works with open source. Releasing Roslyn last year was the biggest step so far and this is one more milestone."
"While the project is aimed at converting iOS apps to Windows Universal apps, the full effort is really about appealing to Objective C developers in general, which is now a sizeable ecosystem of programming language skills," Hilwa continued in an e-mail. "With this move, Microsoft seems determined to engage app publishers and other ecosystem players in constructing the bridge itself. This will expedite adoption."
Microsoft is certainly encouraging participation of coders in the project. "I encourage everyone to check out the Windows Bridge for iOS and install Windows 10 and developer tools," Gallo said. "If you feel that we are missing any feature or functionality, my team would love to know at User Voice.
Gallo also provided updates on the Web and Android bridges. The Web bridge, Project Westminster, became available with the release of Windows 10 and Visual Studio 2015, while the Android bridge, Project Astoria, is in an invitation-only technical preview, aiming for a public beta in the fall.
David Ramel is the editor of Visual Studio Magazine.