updated 12:57 pm EDT, Wed April 2, 2014
Resolution independent UI, best practices detailed at BUILD conference
At today's Build conference, Microsoft has detailed an initiative to allow developers to create one application, usable across Windows Phone 8.1, Windows 8 for the Surface tablet, Windows 8.1 for the PC, as well as the Xbox One. The move, rumored for some time, is the first of its kind, allowing nearly all the same code to be used across platform -- contrary to Apple's and Google's approach to mobile device application development.
The new group of APIs and changes to coding policies allows for a "common, familiar way" to build apps. The new model allows users to use languages that they prefer, sharing "most" code across devices to generate a "universal" app. While coders will need to put in some extra work and implement some "best practices," Microsoft is implementing some tools in Microsoft Visual Studio to assist the process.
A practical demonstration of quick code porting using Visual Studio was given at the Build conference keynote. A "shared" node allows code, localization files, images, and other assets to be easily migrated to any version of the app. Third-party libraries are also importable into the shared node.
Where there are clear user interface differences between the three platforms, coders have the option to leave the generic code "as-is" with exactly the same implementation between devices. Alternatively, tweaks can be made, allowing for custom experiences between devices, with one UI for the phone, and one for the larger screen on a computer or tablet.