top | item 37868054

(no title)

oli-g | 2 years ago

Isn't .NET Core pretty much what you're describing at this point?

discuss

order

thfuran|2 years ago

I don't have experience with .net core, but working on a cross platform java desktop application has me pretty convinced that "write one, run everywhere" is a pipedream even before you add on "forever". It's maybe more of less fine for small, simple applications, but eventually you'll run into something that doesn't work the same in Windows as in Mac and you'll start having to write platform-specific workarounds. At some point you'll find yourself reflecting into the platform-specific jvm internals to work around some bug or another. Then an os update will break something. Then a jvm update will break something.

livrem|2 years ago

I must admit I never looked at that ecosystem. Does it just happen to have been quite stable or is it a serious design decision they made and are sticking to?

From a quick search I do not get the impression that .NET has been deprecating parts of the API, including Core APIs, in the past, e.g.:

https://learn.microsoft.com/en-us/dotnet/core/compatibility/...

stanac|2 years ago

.NET was pretty stable. I remember porting old .NET Framework 4.x MVC web app to .NET Core 2, and then to .NET 5. Both times it took less than an hour to port. Old directory structure and APIs still work even if they are not the new hot way to do things. Microsoft is known for backward compatibility.

AndrewDucker|2 years ago

What UI would you use with it that runs on all platforms?

oli-g|2 years ago

For desktop, Avalonia, hands down.

https://avaloniaui.net/

Open source, powered by Skia, backed by JetBrains, and quite battle-tested at this point for small to medium-sized apps. In theory perfectly capable for enterprise as well, since it's basically a spiritual successor to WPF, which has been an industry standard for about 15 years.

They're diving into mobile and WASM well, but that's more of a recent effort and I haven't tested that yet.