Big Changes in .NET 5, C# 9, and Visual Studio 2019 (v16.8)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
this past week we had.net conf 2020 which is a three-day conference unveiling the new.net 5 c-sharp 9 and the changes in visual studio that came recently most uh specifically 16.8 version of 2019. so i want to take some time in this video to talk about those those changes those improvements and how we can think about them in a larger picture now if you don't know me my name is tim corey and my goal is to make learning c-sharp easier and one of the ways i do that is by teaching context teaching real world not just uh cool new things in a vacuum and that's what we're going to do in this video is we're going to talk about how these new things affect you and how you should look at implementing them in the real world if you should so what we're going to do in this video is i'm going to introduce you and kind of talk at a high level about the things that went on in the conference and then i'm going to go over the next six videos i'm going to release on these different topics because i want to dive deep into six different areas that we talked about so we'll cover that near the end but first let's talk about the the new things at a high level and one of the first things that came out of this conference was that grpc if you've not familiar with grpc i've got a video intro grpc on this channel that talks about it it's a way of communicating between a client and a server in a way that is much more efficient than say an api well grpc has had some huge performance increases and i might go deep into it because i'm not going to do perf if you want to look at perf you can look at the docs site but they have improved the speed over say c plus plus i believe go in java's implementation of grpc grpc is an open standard so there's all these different languages that use it and so if you want performant grpc you can use and you probably should use c sharp so that's some really good news on that front uh xamarin forms five this has some cool changes on xamarin forms some ways to improve that and that really kind of leads into the net 5 changes which are really preparation for net 6. i know it sounds weird that a whole version is dedicated to kind of preparation or anticipation of the next version but the reason why we did this or they did this is because uh the the changes in our culture the changes in work from home and all the things that have gone on over 2020 it kind of slowed the process down and the merging of all the dot-nets together whether that be xamarin or net core or uwp to all the rest of the nets not the framework not net framework but all the rest merging together into one language well that comes in really c sharp six or net six i'm sorry dot net six and that comes out next year but that's kind of the framework for that and in dot net in in dot net six yes dot net six c sharp nine confusing no um in dot net five and then six what's going to happen is that we're going to have cross-platform basically everything uh forms like windows forms and we're going to have a web which we already have where i have console basically all the platforms we all cross platform so when you write c sharp code you can write for any platform which right now we're kind of missing the desktop side of that and that's where dot net 6 comes in so f5 is kind of preparation for that and that's where the improvements to xamarin forms are really important because that's kind of the the foundation which dot net six is built upon so it's really cool stuff going on there another thing that i thought was really cool i'm still keeping an eager eye on is project tie and it's an experimental uh project that's not yet ready for prime time production but it's definitely ready for trying out and seeing how it works and that is a product that's all about micro services and right now with micro services especially when you talk about kubernetes and having multiple microservices talk to each other and all the stuff that goes along with that it can be quite overwhelming and that's where project tai aims to make a lot of that ceremony go away and make it so that we can just kind of more easily spin up a whole environment with all these different moving pieces without having to go into real depth when it comes to kubernetes so some really cool things there like i said we're not going to cover in depth yet because i wanted to get a little further down the road before we we start investing in it and start learning it because i think it will be a really valuable tool but not quite yet because it's definitely not production ready it's development kind already but um if you can't rely on it for production then that's a whole other thing you have to learn and kind of either jump off the cliff sometime so i want to wait until that that's an easier more gradual process rather than a a cliff at some point so that's coming along um another thing that came out of the conference is in in visual studio 2019 version 16.8 so in that version there's a lot of get improvements in how we interact with git and the things that are done there it really a lot improved so some really cool stuff going on there there's a new azure sdk setup for really easy working with making it easy to work with azure in a way that's really easy to do in c sharp so that's really helpful and you know there's there's a lot of other stuff going on but let's talk about those those kind of high level things but let's talk about the six things that i'll go deeper in so those those previous things there's cool stuff going on there and there's even more machine learning and other things but i think there's six areas that came out of this conference for me that i said yes i want to go deeper into into that so the first one and it's not necessarily the personal release in fact probably a second video i release um but it will be on on records so this is one of those things that's come out that's kind of the big thing about c sharp nine and that is records and records are kind of like classes with extra stuff they are more like value types rather than um reference types and if you don't know that means basically when we have let's say an int value so you have a number and if the value is four when you create a new variable let's say you know int b and you have int a with a value of four you create into b and say um b equals a you're you're copying the value is a value type and so you copy that value from a and put it into b so if you change b after the fact you don't change a as well if you make a copy of it that's a value type well records are kind of like that but for models for having multiple prop properties in them so you can copy them and what it does it makes it a shallow copy of that class now there's a lot to get into there in some ways they've been a little hyped over hyped i think because they're not quite as useful as it sounds there's a lot of good stuff that comes out of them but they're not quite as useful as it sounds so we're going to talk about yes they are useful yes they are have value and there's a reason to use them but it's maybe not nearly as big as what you've heard and so there's a lot of gotchas around when you shouldn't use them so we're gonna cover have a whole video dedicated just to records in c sharp nine because that's that's very important but then there's five other features of c sharp nine that i want to cover that aren't records so probably the first video we we cover because it's really cool really quick things to cover um you know with things like init setters so when you have a property you have a a set you can make it read only or private set but there's another a new way of setting it up called init and we'll talk about that how that's really valuable in a lot of ways we'll look at some new pattern matching stuff that's that's really neat and in my favorite pattern match which isn't has doesn't have any to do with switch statements really patterns are usually in switch statements but this pattern is what i've been waiting for forever so we're going to talk about that in the five new features in c sharp that aren't records now the third video so that the records was a was actually the second video the first video was the five other um things in c sharp nine the third video we're going to talk about desktop development and that's the improvements in.net 5 and visual studio 2019 16.8 i referenced that specific version number because that's the one was released recently there will be sorry a preview of 16.9 that's out and they'll have some cool new things in that but 16.8 was the release for net five and four c sharp nine so we're going to talk about that version which is the ones out right now so in the desktop development improvement area we're going to talk about things like xaml hot reload and design time binding and the new windows form designer or the improved windows 4 designer and then the big one we're going to cover in this video is click once it's back it's better than ever and so we're gonna talk about that and how to use it when it's appropriate um you see me cover squirrel which is another a click once alternative um that works with a lot of you know net framework.net core and we've talked about msix which is the other side with kind of the ud wp route but it still works for apf and window forms but now really click once you'll have options out of the box and so we'll look at those options and how how they work now the next video video number four we're going to cover the new api changes there's some really cool things around apis are coming out the biggest one is the built-in open api which is also known as swagger so we've used swearing for in my courses like in the timco retail manager series we implemented swagger and to be honest it's a bit of a pain because of all the configuration you will love how easy swagger is but swagger is not just about having this this cool page you can see your api we're going to actually build automatically a c-sharp client to talk to our api based upon that swagger ui so we're going to do that we're going to do some other really cool things around that swagger setting it up configuring it using it um and just seeing how the api is different um now in dot net five the next video video number five we're going to talk about http rebel repl now if you've never heard of http rapple what it is is a tool for testing your api easily there's been some changes recently that have made it even better and so we're going to integrate it right into visual studio and this tool is for it almost acts like a command prompt for your api where you can do things like dir dur to read all the different commands you can call against your api and then you can you can dial in to the correct directory which is actually just going to be whatever command you want to call it can do get and post and put and all those commands right on the command line very very quickly and easily to test your api and so we'll see how to do that and how easy it is which it doesn't replace postman but it doesn't require the complexities of postman either and there's a lot of very quick and easy ways to test your api using http rebel that you don't have to get postman out to do so we'll talk about that in video five video six is all about blazer and i'm sure that you've got a lot of questions you've probably heard a lot of cool stuff around blazer that have happened recently and there's a lot so we're gonna talk about that in in video six if we can cram it all into one video i might have to make it two videos out of it so there's css isolation that's a big one that people have been asking for it's in the new.net 5 version there's new file types like the input file and the input radio there's uh huge performance improvements for example if you brought down a thousand records or wanted to display a thousand records in a in a table or a view on your blazer page i i recommend against it because the fact that your user doesn't need to see all thousand records but before it happens you bring all thousand records on bind the whole thing well now with the new virtualized keyword we can bind just the ones that are visible and it can actually call out to an api to get the next next few records it needs as it needs them to be very very efficient and so we'll talk about that we'll talk about optional and catch all routes and a lot of other cool stuff including the the performance improvements of blazer web assembly as well so lots of cool stuff coming up like i said there's six videos coming out at least on these new things um i want to make this video kind of give an overview of what's going on but also let you know that i'm not going to wait for the the weekly cadence that we have every monday releasing a video because there's just too much stuff at this point i wouldn't be done until january showing you all the cool stuff that's going on i don't want you to wait that long so i'm gonna be increasing my cadence with these videos i'm not gonna do it permanently just for these videos um let's still also get to the temco retail manager series and kind of wrap up phase two and prepare for phase three yes we're gonna do a phase three with the timco retail manager some really cool stuff coming up there as well so there's a lot to cover a lot to go over be a lot of videos coming out shortly hopefully you got some time over you know if you have thanksgiving break in the u.s or christmas break or just some time off hopefully you can get caught up in all these these cool things coming out i would encourage you if you're not already subscribed and have that notification turned on do that so you're alerted because it's not just every monday and thursday like normal but there'll be videos probably on wednesdays and fridays as well and that all depends on my schedule my trying to get as fast as possible because i want these in your hands so you can make decisions based upon the new stuff coming out now you may be in the in the place where you're saying yeah dot net 5 is already out i just started thinking about net core we're on.net framework and that's just too much stuff too fast the way microsoft is doing it is that every other major release from now on will be a long-term support release i believe that's uh three years i'm not don't quote me on that i think it's a look it up i think it's three years of support for that release dotnet five is not one of those releases dot net six is so every even number in theory from now until eternity but we'll see how it goes for every even number that will be a long-term release meaning a long-term support every release every number will come out in november of the next year so dot net 5 is out november of 2020 dot net six in theory comes out november 2021. you can do the math after that dot net 7 20 22 net 8 20 23 and so on so that's the plan uh so that's one thing that's the cadence going forward for the major releases and then also these these uh are more upgrades than they are massive redos dot net core is a massive redo dotnet 5 is not necessarily a massive it's not a massive redo from net core so netfi net core 3.1 to.net 5 is not a major upgrade at least it's not as far as changes go as far as improvements go he has a lot of cool stuff a lot of speed improvements a lot of overall making things better but when it comes to the the pain of the upgrade cycle it's not nearly as bad as it was to go from net framework which is essentially a whole different framework than net core that upgrade was a little more difficult but i will be doing videos on upgrading a.net five we'll take the temco retail manager applications through an upgrade.net five at some point not until phase three um but that's coming soon that's coming probably in january um but you know we'll go through all that we'll walk you through the process but if you're not yet in.net core i'd highly encourage you to get to it if you can go straight to nat 5 you're gonna have to do some work to make sure that your stuff will will take that leap but um it's worth the leap because this is gonna keep snowballing and improving and improving and improving and you want those improvements you want that security improvement you want those efficiency improvements and the new features a new language are we going to benefit your application now on the other side if you have an established.net framework app it will be net framework is supported as long as windows is supported so you don't have to move you can stay right where you're at you're fine your app will continue to run the only downside is that you may not get any new updates so i heard this this recently the conversation uh i please on twitter where people go back and forth on well this is a bad thing um because it was a conversation i believe on upgrading dapper and the idea that dappers be upgrading to net 5 soon and the conversation goes around well what about net framework and they're like that version is not going to be upgraded it's not a support.net framework anymore and that's scary and concerning but the reality is what you had that version of dapper that works with net framework still works it still works just fine it's just that all new changes all new features they come in the new version with taking advantage of the new language features taking advantage of the new framework features and so if you want new stuff you have to upgrade if you don't mind staying at one level and not getting new stuff you're fine in the net framework so there's that balance there don't get overly excited either way um figure out what you need to do to have the best long-term success for your product for your company and for your situation okay so that's that's what's coming up there's new stuff for net five there's new stuff for visual studio there's new stuff for c sharp i encourage you to get out there and and try it out go read some doc documentation docs.microsoft.com has some really good stuff on the newest stuff but also stay tuned to this channel there's gonna be a lot of videos coming out soon practice what you look what you see don't just decide to use that stuff make sure you listen to what we talk about when we talk about the when to implement because there's there are some gotchas in here i'll make sure that that you've got them okay so that's it for this video new videos coming out very very soon on all this new stuff i look forward to seeing you then and as always i am tim cory [Music] [Applause] [Music] you
Info
Channel: IAmTimCorey
Views: 104,555
Rating: 4.856535 out of 5
Keywords: .net, C#, Visual Studio, code, programming, tutorial, training, how to, tim corey, C# training, C# tutorial, wpf, asp.net, .net core, asp.net mvc, autofac, .net 5, .net conf 2020, .net conf, c#, c# 9, c# 9.0 new features, visual studio 2019, dotnet 5, .net 5 features, .net 5 blazor, .net 5 vs .net core, .net 5.0, .net 5 new features, .net 5 web api, .net 5 winforms, .net 5 visual studio 2019, c# 9 new features, c# 9.0
Id: zjVgQNfAEOs
Channel Id: undefined
Length: 21min 50sec (1310 seconds)
Published: Mon Nov 16 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.