5 ms·
I'll take the otherside, WPF was only useful on Windows desktops. UWP apps can run on desktop, mobile even consoles. Before UWP developing across all devices
by drawkbox 9y ago
I'll take the otherside, WPF was only useful on Windows desktops. UWP apps can run on desktop, mobile even consoles. Before UWP developing across all devices was much more difficult. Developing UWP with Xamarin you can get iOS, Android, Windows platforms with very minimal differences in many cases. With .NET Standard/Core 2 even older .NET libs work in many cases except a key part of WPF, System.Drawing.
WPF was built on older non .NET Standard/Core that doesn't work for Microsoft anymore, Windows lock-in is dead and that is what the WPF/Silverlight game was. They tried to platform lock in at the Windows layer with WPF but it was too late, mobile hit soon after.
Microsoft has to be cross platform now and the lock-in has been moved up to Azure, their new OS for developers essentially.
I think UWP is a better platform than WPF even with less maturity. Lots of people liked WPF as it was better than the previous iteration in Winforms, and probably grew a liking to it, but UWP is now and trying to keep old Microsoft platforms alive is a lost cause. Devs must move to what Microsoft is pushing just as you do with Apple, if not, feel the wrath of the future.
- cm2187 9y agoSilverlight is the proof that wpf isn't and wasn't meant as a platform lock-in. And Microsoft went big on silverlight, until they realised it was about to be booted from the browser. I think webassembly will give a chance to the return of a silverlight.
- drawkbox 9y agoSilverlight was a subset of WPF really to compete with Flash. In 2005-6 both were huge pushes and competitive, Microsoft with Silverlight, Flash with AS3/Flex. Part of this was due to Flash video/Silverlight video that took over the world in 2005-6 with youtube and more. This was just before mobile killed Flash and thus Silverlight. Silverlight never got off the ground except for video really and will not come back. Microsoft had another Flash competitor when Flash3/4 was out called Liquid Motion, same fate. When Microsoft abandons a platform you better as well. All of them were awesome vector based rendering platforms that had great data/web integration. They were also complete packages but thrived when plugins thrived until mobile and Chrome killed plugins. Flash/Silverlight still have some advantages over html5/webgl/canvas/svg (much of if by Khronos, funded by Apple initially) but those have essentially taken their place and WebAssembly that came from Emscripten/asm.js from Mozilla will eventually be another option. I do miss the vector nature of Flash/Silverlight but both are gone, especially the latter. There are better options like Haxe, OpenFL/lime, Adobe Animate (Flash successor in web standards) if people still want to use Flash like platforms.
- sjellis 9y ago"When Microsoft abandons a platform you better as well." This is one of the reasons why I am deeply skeptical of UWP. It looks like a Microsoft-only show, and Microsoft frequently strongly support a platform right until they change direction and flip it into maintenance mode to pursue the Next Big Thing. Why invest in it if you don't need to?
- insertnickname 9y agoUWP apps can run on desktop, mobile even consoles. Windows Mobile is dead, so UWP is really just for desktops and Xbox (and Hololens, but no one cares). How many apps are going to be used on both desktops and Xbox? Maybe some trivial ones, like a weather app. So, realistically, UWP is for desktop apps, and it's just not as good as WPF for that. It doesn't even come with a multi-column list control!
- drawkbox 9y ago> Windows Mobile is dead, so UWP is really just for desktops and Xbox Surface Pros are desktops but closer to tablets/iPad style. So it is like a desktop on mobile platform really. Lots of business apps are going to the Surface for control reasons like that. Who knows, maybe one day Microsoft returns to mobile phones not just tablets, Surface Pros are making inroads and Windows Ink is solid. Bill Gates tablet vision was too early, Microsoft has a valid competitor, but yea it is technically 'desktop'. Big reasons Microsoft went UWP: Surface/tablets, AOT compiling, Windows Store and building compat with .NET standard/core 2, touch inputs + mouse input, none of which WPF offered. UWP will evolve but it is going to closely match iOS/Android more than Windows desktops of the past.
- insertnickname 9y agoUWP does have some neat new stuff, but they didn't have to ignore the desktop like they obviously did. Desktop is a second-class citizen in UWP.
- martinsuchan 9y agoUWP also runs on Windows IoT...
- titanix2 9y ago> Windows lock-in is dead and that is what the WPF/Silverlight game was. This statement is in total contradiction with what UWP is: a platform so OS-locked it doesn’t even run on Windows < 10. On the other and both WPF & Silverlight runs on multiple Windows versions and Silverlight was supported on Mac OS.
- drawkbox 9y ago> UWP is: a platform so OS-locked it doesn’t even run on Windows < 10 True on the Win 10 point but they had to make a change, they do similar with new platforms all the time, WPF was pushed on Vista. Basically UWP matches up nicely with other platforms under Xamarin especially. Though most of Xamarin is iOS/Android focused probably because of the market, it closely mirrors those so that it is easier to make a UWP app from one of those apps. Many business apps are going Android, Surface or even iPad/iPhone Apple focused. Microsoft had to make a hard change for this, UWP is actually a joy to work with on new projects but porting a WPF app may be difficult and you may have to make many custom controls outside touch friendly interfaces. > WPF & Silverlight runs on multiple Windows versions and Silverlight was supported on Mac OS True but not for long, Silverlight also no longer runs on any browser but IE. UWP will evolve, WPF and Silverlight were very rudimentary on their first iterations. Silverlight was solely js based on Silverlight 1 even. Winforms was more supported at the time when WPF came out as well, WPF was only for Vista when it launched, XP it runs slow. Before .NET and Winforms it was Visual C++/VB apps, MFC, COM+ etc. Every once in a while things change enough that the old must be thrown out. WPF was a pre-mobile toolkit and Silverlight was for the age of Flash, those times are in the past.
- tonyedgecombe 9y ago>UWP will evolve Or maybe it will be replaced with something completely new next year.
- drawkbox 9y agoTrue, Microsoft does it about every 2-3 OS versions, however this one is mobile/store focused so it might go 1 or 2 more this round.
- toast0 9y agoIs it a good thing that the same app can run on desktop, mobile, and console? I interact with those type of devices in totally different ways. In many cases, you could share some core logic, but the UI should be drastically different. For some types of apps, the core assumptions of the different platforms are so different, it's hard to share anything. Regardless of that, UWP has poor teach for Microsoft desktop and Microsoft mobile. Somewhere along the way, Microsoft forgot that they won't let most people upgrade from windows phone 8 to windows mobile 10, and that there are a lot of holdouts on desktop too.