.NET 006: Async and C# 8 with Filip Ekberg
Adventures in .NET17 Syys 2019

.NET 006: Async and C# 8 with Filip Ekberg

Episode Summary In this week’s episode of Adventures in .NET the panel interviews Filip Ekberg, Microsoft MVP, about using async, await, and the new features in C# 8. They begin by discussing the evolution of running tasks and multithreading in async. Filip describes the evolution beginning with background workers, through task parallel libraries finally to async and await. The panel considers how managing tasks has been made almost too easy. Filip explains that there has been a drive to make everything asynchronous but explains that this approach doesn’t always make sense. The panel asks Filip when a developer should use async and await. If an application has a UI, Filip encourages the use of async and await and he outlines the benefits. He also explains that if someone wants to be a full-stack developer they need to understand async and await on both the serverside and clientside. The panel wonders what the most common async and await mistakes are in .NET. Filip shares a couple of the most common mistakes he sees. The first is deadlocking an application because of the inappropriate methods such as .result and .wait on tasks. The second is marking methods as async without running the await keyword. He explains what these mistakes do to your application and gives advice on avoiding these mistakes. The panel expresses past frustrations in making all methods especially tops methods when in ASP.NET. Filip gives the panel advice on making it asynchronous top to bottom and ways to handle those aggravating top methods. He also explains how to use the await keyword and state machines effectively. Debugging in async is the next topic the panel considers. Filip explains why debugging is so tricky in asynchronous applications. He gives a few tips, his biggest piece of advice is to update Visual Studio and you should get more help in debugging than from older versions. The panel moves on to discuss C# 8. Filip explains that C# is his language, he loves it! He shares three new changes to the language features in C# 8. They made changes to how tuples work, pattern matching and null reference types. Tuples are the first change the panel considers. Filip explains what tuples are and what they do. Tuples allow you to represent a type without actually using that type. The panel considers how tuples have changed in C# 8, they are still position based but are more flexible in calling them. Next, the panel discusses null reference types. The control null reference types allow over nulls is considered. Filip shares some recommendations for using null reference types. The panel considers what might happen if someone were to use null reference types in an existing application. The wonder if it would have any benefit or if it would break the whole application. The final feature they discuss is pattern matching. Filip explains the benefit of using the new pattern matching with the new tuples feature in C# 8. The new pattern matching can be used to find tupple patterns, position patterns, and property patterns.
Panelists
  • Shawn Clabough
  • Charles Max Wood
  • Caleb Wells
Guest
  • Filip Ekberg
Sponsors Links Picks Charles Max Wood: Caleb Wells: Filip Ekberg: Shawn Clabough: Special Guest: Filip Ekberg.

Support this podcast at — https://redcircle.com/adventures-in-net/donations

Advertising Inquiries: https://redcircle.com/brands

Privacy & Opt-Out: https://redcircle.com/privacy

Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

Jaksot(236)

Innovating with .NET Core and Blazor Across Platforms with Jeff Fritz - NET 214

Innovating with .NET Core and Blazor Across Platforms with Jeff Fritz - NET 214

In this exciting episode of Top End Devs, we dive into the world of .NET development with none other than Jeff Fritz, a recognized community manager at Microsoft. Hosted by Sean Clabo and co-hosted by...

24 Tammi 20251h 9min

What is Command Query Responsibility Segregation (CQRS) with Derek Comartin - .NET 213

What is Command Query Responsibility Segregation (CQRS) with Derek Comartin - .NET 213

In this episode of Adventures in .NET, guest Derek Comartin talks to us about Command Query Responsibility Segregation. He explains CQRS benefits, downsides and usage in real world situations.LinksMed...

7 Tammi 202550min

All .NET Stack All The Time - .NET 212

All .NET Stack All The Time - .NET 212

Caleb recently started a new job. The project he is working on is all in .NET (MVC, Web Api, Azure, etc.). Caleb and Shawn discuss some of the features of MVC and Power BI that Caleb is learning on th...

31 Joulu 202420min

Product Management? - .NET 211

Product Management? - .NET 211

Most developers we know find project management to be a necessary evil but without it a lot of us would be stumbling around in the dark. Shawn and Caleb look back over their careers to discuss differe...

24 Joulu 202428min

Getting into Source Generators in .Net - .NET 210

Getting into Source Generators in .Net - .NET 210

Unsure about how and why to use Source Generators in .NET? Stefan Schranz explains them in an easy-to-understand way. He compares them to T4 templates and explains that there’s a new and more powerful...

17 Joulu 202430min

Blangular (Blazor + Angular) - .NET 209

Blangular (Blazor + Angular) - .NET 209

Have you ever thought about mixing two SPA frameworks together? In today's episode we discuss doing just that, Blazor and Angular running in the same application. Both Angular and Blazor have ways to ...

10 Joulu 202427min

Blockchain on Azure  - NET 208

Blockchain on Azure - NET 208

Today we take a look at how Microsoft is working with blockchain in Azure. Stefano Tempesta is a senior program manager at Microsoft on Azure confidential computing. Azure confidential computing focus...

3 Joulu 20241h 4min

Interactive C# with VS Code Notebooks with Eric Potter - NET 207

Interactive C# with VS Code Notebooks with Eric Potter - NET 207

VS Code Notebooks provides a way to write quick interactive C# along with documentation to learn and train with.Links.NET Interactive NotebooksAptera SoftwareHumble ToolsmithBinderProject Jupyter | Th...

26 Marras 202435min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
mimmit-sijoittaa
rss-rahapodi
psykopodiaa-podcast
herrasmieshakkerit
ostan-asuntoja-podcast
rahapuhetta
rss-rahamania
rss-lahtijat
rss-seuraava-potilas
leadcast
rss-merja-mahkan-rahat
rss-40-ajatusta-aanesta
rss-porssipuhetta
rss-levosta-kasin-yrittajyys
rss-sisalto-kuntoon
rss-vaikuttavan-opettajan-vierella
rss-ma
rss-bisneksen-pehmea-puoli
rss-draivi