Building C# 8.0
-
The current plan is that C# 8.0 will ship at the same time as .NET Core 3.0. However, the features will start to come alive with the previews of Visual Studio 2019 that we are working on.
It's looking more and more Python-like all the time
Yeah, kind of a dupe of a Lounge item. Hopefully you'll forgive me.
-
The current plan is that C# 8.0 will ship at the same time as .NET Core 3.0. However, the features will start to come alive with the previews of Visual Studio 2019 that we are working on.
It's looking more and more Python-like all the time
Yeah, kind of a dupe of a Lounge item. Hopefully you'll forgive me.
I believe the comment about C# more and more Phyton-like is more of a joke than a serious statement. And I also believe there are many of us, C# programmers, waiting for the new features mentioned in the .NET blog post, but I would like the final release also incorporate the announced "records" and the "with" clause features.
Sorry for my bad English
-
The current plan is that C# 8.0 will ship at the same time as .NET Core 3.0. However, the features will start to come alive with the previews of Visual Studio 2019 that we are working on.
It's looking more and more Python-like all the time
Yeah, kind of a dupe of a Lounge item. Hopefully you'll forgive me.
I'm a bit surprised they are effectively deprecating .NET Framework with this, as some of the new features won't work on .NET Framework, only on .NET Core. With such a major change, .NET Standard should at least get a major version bump to 3.0 rather than 2.1, to indicate potentially breaking changes, in accordance with Semantic Versioning.
"If you don't fail at least 90 percent of the time, you're not aiming high enough." Alan Kay.
-
The current plan is that C# 8.0 will ship at the same time as .NET Core 3.0. However, the features will start to come alive with the previews of Visual Studio 2019 that we are working on.
It's looking more and more Python-like all the time
Yeah, kind of a dupe of a Lounge item. Hopefully you'll forgive me.
Quote:
... rely on new runtime enhancements, and we will not make those in the .NET Runtime 4.8 either. So this feature simply will not work on .NET Framework 4.8 ...
What a great feature! And what about the features of .Net 6 which we use? Will all of them be supported by .NET Core 3.0? I doubt that... And what a nice code example:
var area = figure switch
{
Line _ => 0,
Rectangle r => r.Width * r.Height,
Circle c => Math.PI * c.Radius * c.Radius,
_ => throw new UnknownFigureException(figure)
};Why is that bad code? I could ask such a question in a job interview. I want to see if the candidate understands basic OO concepts and the consequences of unclean code. (This code places the calculation of the area into an extra class, instead of providing a method in the interface of figure. Adding a new figure type means finding all such places. Of course we can expect many different implementations scattered all over the code base, ...)
Oh sanctissimi Wilhelmus, Theodorus, et Fredericus!
-
Quote:
... rely on new runtime enhancements, and we will not make those in the .NET Runtime 4.8 either. So this feature simply will not work on .NET Framework 4.8 ...
What a great feature! And what about the features of .Net 6 which we use? Will all of them be supported by .NET Core 3.0? I doubt that... And what a nice code example:
var area = figure switch
{
Line _ => 0,
Rectangle r => r.Width * r.Height,
Circle c => Math.PI * c.Radius * c.Radius,
_ => throw new UnknownFigureException(figure)
};Why is that bad code? I could ask such a question in a job interview. I want to see if the candidate understands basic OO concepts and the consequences of unclean code. (This code places the calculation of the area into an extra class, instead of providing a method in the interface of figure. Adding a new figure type means finding all such places. Of course we can expect many different implementations scattered all over the code base, ...)
Oh sanctissimi Wilhelmus, Theodorus, et Fredericus!
this was a contrived sample to show how the new switch expression works. while you remark about this particular expression being better handled with override and a common class is accurate, it misses the point.... further this handle the "not a figure" case, which overriding wouldn't! ;P and Line, obviously, has no need to implement area ....
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!