top | item 29793041

(no title)

talos2110 | 4 years ago

What do you mean about WinForms? Look at this https://devblogs.microsoft.com/dotnet/whats-new-in-windows-f... from a couple of months ago, you can still use it pretty well

discuss

order

pjmlp|4 years ago

As long as you are willing to put up with the bugs on the new .NET Core based designer, and can get new components that were rewritten for the new out-of-process architecture of the designer.

secondaryacct|4 years ago

You can use it but maybe I didnt explain that I work mainly in performance optimization of heavy trading applications in electronic trading for a tier 1 investment bank.

No I cant explain why we wont finance a gigantic team to redo it all, but anyway: we need this to go faster, and I wish MS would fix WinForms to make them transparently faster rather than me profiling with despair "yes hum modals will always be a bit slow to redraw 50 controls, we could port to the new stuff but we're not sure it ll get better (but at least we ll benefit from more framework level optim) and it's so different we need a new guy" "then find a new guy", im told, and then every new guy who did some low latency GUI at our level (our app is very optimized but China will decuple volume eventually so...) will tell me he desperately wants out to move to java backend where all the fun is... which I cant deny since that s where I got extracted from urgently when half the .NET team left out of despair to go do Java in other banks lol.

I even grew to like .NET even if Ill never wrap my head around the build process and dependency management. Just a wish that MS would continue to optimize winform somehow so I wouldnt have to recode forms doing exactly the same thing. I suppose it s nonsensical since the new paradigm IS the optim but one can whine :D

int_19h|4 years ago

WinForms sits on top of classic Win32 UI (HWND etc) architecturally, and that's what constrains its performance more than anything else. The way you get more perf is by taking over and rendering everything yourself, like WPF or WinUI does. But you can't do that while maintaining backwards compatibility - stuff like Control.Handle or IWin32Window.