Live data from Hacker News

What Makes .NET Core So Special?

blog.jamesmichaelhickey.com

21–30 of 247 posts

Re: What Makes .NET Core So Special?

#21

Many of the features (Dependency injection, etc) seem only to be available for ASP.Net Core. What about cross platform desktop applications? Do we have a GUI layer that is cross platform as well?

Electron.NET should allow you to do that: https://github.com/ElectronNET/Electron.NET

Re: What Makes .NET Core So Special?

#22

Earlier quoted context omitted.

Sanely designed/mature libraries I might add. I went through an exercise to build a simple web app with Rust and ASP.NET/Core - I was mind boggled how mature the .NET Core stack/ASP.NET felt compared to pulling in 3rd party crates that are constantly in flux. Even after you're done fighting them the code still looks daunting compared to C# - there is a certain cleanliness to it. Not criticizing Rust which is a very n…

The .NET ecosystem is a lot more mature than Rust's, there is no arguing that. As for code cleanliness, though, it's debatable. Rust has ADTs, Option, exhaustive pattern matching, Option and Result. C# doesn't.

C# has a 3rd party Option lib that works well. I use it heavily.

F# is probably a better competitor to Rust than C# though.

Re: What Makes .NET Core So Special?

#23
post #13

What about client-side apps? Is it possible to write a cross platform client app with .NET Core, a la Electron way? That would be my dream framework. I've been waiting for it for decades, seriously. (I looked at Avalonia UI and mono/xwt. Not sure how stable/reliable they are.)

[deleted]

Re: What Makes .NET Core So Special?

#24
post #2

this seems odd. The main advantage other than going faster than Node ( which you'd expect ) is that it's cross platform and can run in containers and has libraries.....like MOST other languages. Not knocking .NET Core, I use it a lot... but this just doesn't seem like it tells you what's special about it

I wonder if it is the garbage collected language with the highest performance ceiling now?

Java might still be faster, and that's deliberate.

The goal of RyuJIT is understandable code and predictable machine code. HotSpot aims for performance at all costs. Many HotSpot features have been moving over to RyuJIT, even more are planned. I've always been envious of HotSpot. The main feature I've been envious of is its namesake: it aggressively optimizes hot spots. .Net now has this (tiered compilation), but it's still ultimately as-conservative as the compiler a few years back.

The hill that Java has to climb over is the extreme degree of "enterprise code." ASP.Net core is designed with the predictable performance profile of .Net in mind. Java has, well, this[1].

[1]: https://ptrthomas.files.wordpress.com/2006/06/jtrac-callstac...

Re: What Makes .NET Core So Special?

#25
post #13

What about client-side apps? Is it possible to write a cross platform client app with .NET Core, a la Electron way? That would be my dream framework. I've been waiting for it for decades, seriously. (I looked at Avalonia UI and mono/xwt. Not sure how stable/reliable they are.)

https://github.com/aspnet/Blazor

Re: What Makes .NET Core So Special?

#26
post #2

this seems odd. The main advantage other than going faster than Node ( which you'd expect ) is that it's cross platform and can run in containers and has libraries.....like MOST other languages. Not knocking .NET Core, I use it a lot... but this just doesn't seem like it tells you what's special about it

I agree, they can do a better job articulating what is “awesome”. For me personally, there are 3 main reasons that I have been super excited about .Net core: 1. It is C#, in my opinion the best statically typed language. The easiest way I have described it to other folks is it is Java++. Combine it with really good intelligence, and it is like the code “flows out of you”. Part of the reason for that is the effort put…

> 3. Rosleyn: being able to compile and potentially be as fast as C++

Roslyn is the C#/VB compiler and analysis tool. Yes, that allows you to compile C#. No, it doesn't have anything to do with performance. That's where other things come in, like RyuJIT, or .NET Native.

Re: What Makes .NET Core So Special?

#27
post #2

this seems odd. The main advantage other than going faster than Node ( which you'd expect ) is that it's cross platform and can run in containers and has libraries.....like MOST other languages. Not knocking .NET Core, I use it a lot... but this just doesn't seem like it tells you what's special about it

I agree, they can do a better job articulating what is “awesome”. For me personally, there are 3 main reasons that I have been super excited about .Net core: 1. It is C#, in my opinion the best statically typed language. The easiest way I have described it to other folks is it is Java++. Combine it with really good intelligence, and it is like the code “flows out of you”. Part of the reason for that is the effort put…

1) As a static language C# is extremely weak. You have a minor edge over Java due to reified generics, but in terms of a type system saving your ass C# is miserable. 2) Err... You just came to the party a few years ago. JVM has been running on Linux and MacOS and a host of other operating systems for nearly 20 years. 3) JVM?

I like C# but know where it stands.

Re: What Makes .NET Core So Special?

#28
post #13

What about client-side apps? Is it possible to write a cross platform client app with .NET Core, a la Electron way? That would be my dream framework. I've been waiting for it for decades, seriously. (I looked at Avalonia UI and mono/xwt. Not sure how stable/reliable they are.)

We had failed incarnations of this many times. WPF/Everywhere. Silverlight. And now Blazor - albeit this is a little better as targetting Wasm, but embedding the Mono runtime, I still don't get it..

Re: What Makes .NET Core So Special?

#29

Many of the features (Dependency injection, etc) seem only to be available for ASP.Net Core. What about cross platform desktop applications? Do we have a GUI layer that is cross platform as well?

Microsoft's offering here is Xamarin Forms. If you're an application developer that's probably enough and useful. Otherwise, given that Microsoft is now a cloud and services company there doesn't seem to be much of a push for cross-platform desktop applications. Personally I'm still hoping for Avalonia to be picked up officially, but perhaps that's just me liking WPF too much and hoping in vain.

Re: What Makes .NET Core So Special?

#30
post #2

this seems odd. The main advantage other than going faster than Node ( which you'd expect ) is that it's cross platform and can run in containers and has libraries.....like MOST other languages. Not knocking .NET Core, I use it a lot... but this just doesn't seem like it tells you what's special about it

I think it's because C# and (most of) its ecosystem is a joy to use compared to many languages that are popular with large corporations. Having that ecosystem and that particularly delightful language become cross platform is a welcome change, and also a welcome sign that Microsoft is willing to open up a bit more than many of us were expecting.
Post reply on HN