.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)

A Tour Around the World of XAML with Dmitry Lyalin - .NET 190

A Tour Around the World of XAML with Dmitry Lyalin - .NET 190

We spend time with Dmitry discussing all the great things going on in the XAML space. The teams working on XAML tooling are very active and releasing lots of updates based on user feedback.LinksWhat’s...

11 Kesä 202458min

Innocent Application Performance Monitoring with Innocent Bindura from Raygun - .NET 189

Innocent Application Performance Monitoring with Innocent Bindura from Raygun - .NET 189

The panel discusses application performance monitoring, bug reporting, and real world experiences with Innocent Bindura, Snr Developer at Raygun.LinksUncle Bob Martin | Clean CoderEmail: Innocent Bind...

28 Touko 202445min

Digging into .NET in AWS - .NET 188

Digging into .NET in AWS - .NET 188

All cloud service providers have a learning curve and AWS is no exception. Garo Yeriazarian has been working with AWS for a couple of years now and has a lot of practical advice for working with .NET ...

21 Touko 202451min

The History of .NET with Richard Campbell - .NET 187

The History of .NET with Richard Campbell - .NET 187

In this episode of Adventures in .NET, Richard Campbell, podcast manager, conference creator and author, joins the panel to share the history of .NET. He starts by explaining his background, his fathe...

7 Touko 20241h 5min

Browser Automation with Puppeteer and Playwright - .NET 186

Browser Automation with Puppeteer and Playwright - .NET 186

Darío Kondratiuk is a web developer and is the author of Puppeteer-Sharp and Playwright-Sharp. He is also the author of UI Testing with Puppeteer book. Dario shares his expertise in coding and his piv...

30 Huhti 202453min

The Magic of DAPR with Cecil Phillip - .NET 185

The Magic of DAPR with Cecil Phillip - .NET 185

In this episode of Adventures in .NET we learn about DAPR and how it can make all of our lives easier. Maybe you like microservices or maybe you don’t, well DAPR is here to help with implementation an...

16 Huhti 20241h 4min

Creating Developer Courses with Taurius Litvinavicius - .NET 184

Creating Developer Courses with Taurius Litvinavicius - .NET 184

In this episode of Adventures in .NET, the panel discusses creating Udemy developer courses and .NET Core APIs with course author Taurius LitvinavicusSponsorsChuck's Resume TemplateDeveloper Book Club...

9 Huhti 202438min

Building Web Apps with Blazor with Daniel Roth - .NET 183

Building Web Apps with Blazor with Daniel Roth - .NET 183

Daniel Roth is the Product Manager at Microsoft for Blazor. They delve into the world of .NET, focusing on the latest updates for Blazor and the upcoming .NET 9 release. With detailed discussions on s...

2 Huhti 20241h 5min

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