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

Streamlining Measurement Representations in APIs Using UnisNet Library for .NET - .NET 182

Streamlining Measurement Representations in APIs Using UnisNet Library for .NET - .NET 182

Haim Kastner is a Senior Software Developer. They delve into the world of .NET and development, as they share their experiences and insights. They discuss the complexities of working with units of mea...

26 Maalis 202455min

The Role of Algorithm Implementations and Testing in Development - .NET 181

The Role of Algorithm Implementations and Testing in Development - .NET 181

Andrii Siriak is the lead .NET software engineer at SoftServe. They delve deep into the critical topic of algorithm implementations and testing in software development. They provide valuable insights ...

19 Maalis 202454min

To CI/CD or not to CI/CD - .NET 180

To CI/CD or not to CI/CD - .NET 180

In today's episode, we are joined by Muhammad Azeez to discuss CI/CD. It is a safe bet that most development teams could benefit from integrating CI/CD into their workflow. CI/CD can speed up developm...

12 Maalis 202447min

Voice to Code inside Visual Studio - .NET 179

Voice to Code inside Visual Studio - .NET 179

Adam, Christian, Mark, and Shawn dive into the latest developments and innovations in the world of technology and coding. In this episode, they explore the exciting integration of voice commands into ...

27 Helmi 202454min

You've been Blazored!  - NET 178

You've been Blazored! - NET 178

Chris Sainty is a man on a mission. A mission to tell everyone how awesome Blazor is! Chris started working with Blazor early on and has done speaking events, writes a blog, created an open source lib...

20 Helmi 20241h 5min

All About Language Features - .NET 177

All About Language Features - .NET 177

In today's episode Morgan Kenyon joins us to discuss why choosing the right programming language is important and some of the best features in different languages. We discuss the differences and benef...

13 Helmi 202442min

Mastering SignalR - .NET 176

Mastering SignalR - .NET 176

Have you ever used SignalR in your development? .NET might have used it for the code you wrote, but you didn't realize it. Kevin Griffin has used SignalR for multiple projects over the years and joins...

6 Helmi 202452min

High Performance Databases with RavenDB with Oren Eini - NET 175

High Performance Databases with RavenDB with Oren Eini - NET 175

Guest, Oren Eini joins the panelists of Adventures in .NET to share on the common database performance issues that led him to the path of writing his own database - RavenDB.SponsorsChuck's Resume Temp...

30 Tammi 20241h 4min

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