Kona is an on-going project from Microsoft’s patterns & practices team that is intended to provide guidelines and best practices for creating maintainable, testable and extendable Windows Store LOB apps. Kona is to Windows Store apps what Prism is to traditional WPF applications. Like Prism, Kona’s release will contain the library itself (currently named Kona.Infrastructure), and a reference implementation.
The first release of Kona is scheduled for the end of Q1 2013, and will provide guidance for subjects such as application lifecycle management, search, navigation, live tiles, local data management, proper layering, validation and more. The complete feature list is available here.
Windows Store apps have totally different characteristics than desktop applications. They are mainly intended for consuming information rather than producing information. And as such, each app will basically be focused on a simple unique task (RSS reader, Email client, Media player, Online Purchases and so on). This is in contradiction to traditional desktop applications, intended for producing or processing information (Word, Visual Studio, Excel, Photoshop and so on). Those characteristics differs Kona from Prism. In Kona, there is no such thing as a Module, Region, or EventAggregator. All the features related to UI composition were not migrated to Kona because UI composition is not needed in a small, focused app. On the other hand, Kona provides guidelines for some Window Store specific features like the Settings and Search charms, and live tiles.
In the following weeks I intend to write about specific features that are covered in Kona. Stay tuned.