UWP is the next stage for UI windows apps after WPF, in purpose I didn’t count win8 (WinRT) in my sight, in opposite to those who said WPF IS DIE (it was 2-3 years ago)
Well WPF still kicking while Win8 platform is RIP.
Old platform but new attitude: From the UWP concept especially for FED developers using Xaml, it will be easy to jump in. even if not, my next series of posts will guide you into UWP development.
Cross-platform as Concept is great, even if we thinking on Microsoft cross-platform,
No more coding for a platform or device, just coding, of course there are some
UI challenges that will discussed later.
And from simple reason, I can develop an desktop application and without thinking it will run on other product who share the same OS, since Win10 running on variety of devices.
Simple demo for the Win10 concept is try talking with Device Camera hardware,
If you in Smartphone it will work same as Tablet or laptop even for old PC with external WebCam you can control it with same bunch of code.
or the Files API (StorageFile, StorageFolder). In general all the code you writing in Win10 is unified, the only SPECIAL CASE will bee device capabilities that will discussed later.
Comparing to WPF I experience that Microsoft try to simplify the Programing technics.
So. Here is list of POI (points of interest) that founds critical to WPF expert developers. How made the step to work with UWP, if you not a WPF developer you can skip it.
1. Dynamic Resource has gone. ThemeResource which is similar get involved.
2. New binding Concept of X:Bind- it provide compile time Binding but required CodeBehind and taking time, cause duplication and mess with clean MVVM.
3. RelativeSource Binding concept is almost sterilized, element-name binding is everywhere.
4. Style- Triggers has vanished, Visual State getting stronger (storyboard is not mandatory), also new Blend SDK with behaviors.
5. Layout system where updated, panels like WrapPanel, DockPanel, UniformGrid has gone.
6. Layout system where updated (2) two new complex panel: VariableSizedWrapGrid and RelativePanel. Also introduced SplitView but it is not a panel.
7. Userocntrol as Page Content is outskirt. Pages is everywhere.
8. Window element is abstraction. More often working with Frames and Pages.
9. Built in navigation service (same as Silverlight R.I.P)
10. Markup extension is still a concept, custom markup is complicated.
11. Dependency Property is main player, but Property Metadata has shrinks.
12. Some new controls provided. few are cools, and could save templating time (toggleswitch, Flyout, autosuggestBox and more..)
13. Adaptive UI triggers. Helpful tool for responsiveness UI not depends on platform specific but on runtime screen size.
14. Be aware to the AppManifest.xml file. It is must for Win10 application