Had time to digest everything from BUILD yet? It sure is a lot to take in. We’ve blogged about some of the sessions: day 1, day 2 and day 3. A lot has been written about news and content from BUILD, here’s a distilled list of how the app landscape is improving with Windows 10. I hope this can provide some overview and guidance in the vast amount of info available. I have surely missed lots of great things, but this should at least get you started. Please note – these apps will run on all Windows 10 devices – ranging from IoT devices to Surface Hub and HoloLens.
- Bridges to Windows – create apps from existing code and publish to the Windows Store!
- Web – Package any web app, do feature detection to light up with native app features, eg live tiles and notifications.
- .NET/Win32 – Some limitations on the legacy code (eg no services), but all capabilites of Windows apps.
- iOS – Open your Objective-C code in Visual Studio and re-build as a Windows app. Voila!
- Android – SDK plugin for Eclipse etc that swaps Google services for Microsoft services, and reroutes all Java calls to the Windows kernel.
- One app – One Store
- Same binary runs on all Windows 10 devices – custom UI optional.
- Device family vs feature detection
- DeviceFamily needed in some cases (Universal, Desktop, Mobile, Team, IoT etc), but try to use feature detection (ApiInformation.IsTypePresent) as far as possible for normal apps.
- Converged API
- E.g. the PivotControl is now a Universal control, used to be Phone only. BackRequested is a Universal concept – Windows will have a back button in the task bar for tablet mode.
- AppModel
- Many new triggers (eg system managed SocketTrigger, BluetoothLE). ExtendedExecution upon suspend, until resources needed.
- App-to-app interaction
- Apps can launch other apps and ask for return data, apps can also create background tasks for other apps to call.
- Tiles & notifications
- Adaptive tiles and a tile template visualizer, super.
- XAML layout
- Visual State Triggers (including AdaptiveTrigger and custom) to create responsive UIs. Bindable events, useful for DataTemplates. New controls: RelativePanel, SplitView etc.
- XAML performance
- x:Bind – compiled bindings, much faster. x:DeferLoadStrategy – deferred loading of XAML block until visible. Lots of framework improvements, eg better XBF (XAML binary format).
- Win2D
- Almost the full performance of DirectX, from a few lines of C# – awesome. On 8.1 also.
- Tools
- Designer now fully separated from XAML editor. Visual Tree Inspector for examining and editing XAML tree in runtime. Blend re-created with VS technology, now handles nuget, source code etc.
- Store
- One Store for all devices, admin roles for uploading/managing apps, translations, public/private responses etc. Business Store for enterprises.
Some links
Build 2015 recap for XAML and native apps (Tim Heuer)
What’s New in Visual Studio Tools for Universal Windows Apps (Windows Apps Team)
A deeper dive into the Universal Windows Platform (Kevin Gallo)
Guide to Universal Windows Platform (UWP) apps
Universal Windows Platform: 10 Things You Need to Know
Full list of new WinRT API in Windows 10
Are you as excited as I am for what’s to come?! It’s gonna be a great summer.