Live data from Hacker News

Windows Presentation Foundation (WPF) on GitHub

github.com

11–20 of 102 posts

Re: Windows Presentation Foundation (WPF) on GitHub

#11
Compared to winforms, WPF has an incredibly steep learning curve. Working with it was always painful to me. The vector graphics architecture they mention makes it even harder.

While it's rich capabilities enable you to implement everything you can dream of, doesn't the same hold for JS desktop apps? (+ they are cross platform)

I don't see the use case anymore...

Re: Windows Presentation Foundation (WPF) on GitHub

#12

Compared to winforms, WPF has an incredibly steep learning curve. Working with it was always painful to me. The vector graphics architecture they mention makes it even harder. While it's rich capabilities enable you to implement everything you can dream of, doesn't the same hold for JS desktop apps? (+ they are cross platform) I don't see the use case anymore...

I've always thought that I ought to have learned WPF, but the reality is I don't work on significant desktop software, so when I need to build a little desktop UI, it's a quick and dirty internal tool, or at best a configuration dialog. WinForms is incredibly easy to bang out that kind of use case so it just never made any sense to put the investment in.

Maybe if Silverlight hadn't been such a deadend.

Re: Windows Presentation Foundation (WPF) on GitHub

#13
post #6

WPF was fantastic for rich desktop applications. It makes me very happy that there is active effort from Microsoft to port it to .NET Core. If only it was cross platform...

.Net Core is cross platform. So, WPF is cross plaftorm now as well

Nope, you can't build WPF apps on Mac using Visual Studio for Mac.

Re: Windows Presentation Foundation (WPF) on GitHub

#14

Compared to winforms, WPF has an incredibly steep learning curve. Working with it was always painful to me. The vector graphics architecture they mention makes it even harder. While it's rich capabilities enable you to implement everything you can dream of, doesn't the same hold for JS desktop apps? (+ they are cross platform) I don't see the use case anymore...

Modern js frameworks makes mvvm/similar quite pleasant. Some of the binding in WPF is quite complex, especially since you don't get proper type safety for all that effort (there is a lot of stringly typed things sticking out).

On the other hand, the layout model of WPF is a lot easier than mastering html+css.

JS desktop apps still mostly don't work without embedding a browser like electron and that ranges from annoying (e.g. for size/memory reasons) to impossible (for things like a plugin where you have a constrained environment, need to launch instantly etc).

The middle ground is desktop js using system browsers, but it's pretty painful to do too.

Re: Windows Presentation Foundation (WPF) on GitHub

#15
post #7

What are the implications of this? WPF in Linux?

Neah, the internals are too Windows specific (Win32/DirectX) to be easely portable. Maybe this will be the basis of a cross platform toolkit in the future , but right now MS doesn't seem to really care....

In theory someone could use winelib or another translation layer to make a port.

Re: Windows Presentation Foundation (WPF) on GitHub

#16
post #7

What are the implications of this? WPF in Linux?

Neah, the internals are too Windows specific (Win32/DirectX) to be easely portable. Maybe this will be the basis of a cross platform toolkit in the future , but right now MS doesn't seem to really care....

...which is really unfortunate. If they did care, it could easily lead to a renaissance of desktop apps.

Re: Windows Presentation Foundation (WPF) on GitHub

#17
post #8

What are the implications of this? WPF in Linux?

No. This is explicitly not a goal at the moment. This is first and foremost the effort to make it open-source and available in .NET Core 3.

They are deprecating .NET Framework and have to migrate popular application models like WinForms and WPF to .NET Core. Open Source is a by-product.

And starting later this year, .NET Core will be re-branded to ".NET" deprecating .NET Framework (on 4.8) and merging Mono into it (see Build Conference). .NET Core 4.0 will be skipped and the next version is ".NET 5" (without the Core moniker).

Re: Windows Presentation Foundation (WPF) on GitHub

#19

Compared to winforms, WPF has an incredibly steep learning curve. Working with it was always painful to me. The vector graphics architecture they mention makes it even harder. While it's rich capabilities enable you to implement everything you can dream of, doesn't the same hold for JS desktop apps? (+ they are cross platform) I don't see the use case anymore...

Modern js frameworks makes mvvm/similar quite pleasant. Some of the binding in WPF is quite complex, especially since you don't get proper type safety for all that effort (there is a lot of stringly typed things sticking out). On the other hand, the layout model of WPF is a lot easier than mastering html+css. JS desktop apps still mostly don't work without embedding a browser like electron and that ranges from annoyi…

WPF never quite made the leap from data-binding and MVVM to a component-based + state-management architecture like React&friends. A consequence of that is a hairy overcomplicated mess of a binding system that's full of footguns. But it was still ahead of its time - that one last step would have made it amazing.

Re: Windows Presentation Foundation (WPF) on GitHub

#20
post #17
post #8

Earlier quoted context omitted.

No. This is explicitly not a goal at the moment. This is first and foremost the effort to make it open-source and available in .NET Core 3.

They are deprecating .NET Framework and have to migrate popular application models like WinForms and WPF to .NET Core. Open Source is a by-product. And starting later this year, .NET Core will be re-branded to ".NET" deprecating .NET Framework (on 4.8) and merging Mono into it (see Build Conference). .NET Core 4.0 will be skipped and the next version is ".NET 5" (without the Core moniker).

> and the next version is ".NET 5" (without the Core moniker).

And that single thing will eliminate years worth of confusion. About bloody time.

A nice byproduct is that it will finally convince everyone in my org that we have to go all in on migrating from "traditional .Net" to .Net "Core", on everything we do.

Also about bloody time :)

Post reply on HN