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

Performant Applications using the Actor Pattern & Akka.NET with Aaron Stannard - .NET 206

Performant Applications using the Actor Pattern & Akka.NET with Aaron Stannard - .NET 206

Aaron Stannard joins the Adventures in .NET team this week to discuss Akka.NET. He digs into the Actor model, the reasons to use it and what gave him the impetus to port Akka to .NET.Linkshttps://petabridge.com/bootcampBuilding Your First Whiskey CollectionPicksShawn  - Locke & KeyCaleb- Animal Crossing: New HorizonsJoel - Fender Special Edition Deluxe PJ Bass Sea Foam PearlAaron - eaglerare.comBecome a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

19 Marras 20241h 8min

Product Management? - .NET 205

Product Management? - .NET 205

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 different project management methodologies. Whether it is waterfall, agile, scrum, or none of these, projects are hard to manage. Both Shawn and Caleb have seen a lot of different ways that projects can be managed or mismanaged and they have differing opinions on what works best. Join us for this episode to find out which they prefer and what allows them to focus on getting to work coding. What is your preferred project management style? Let us know on Twitter at @dotnet_PodcastPicksCaleb- Guild Wars 2: End of Dragons Shawn- Neewer Desk Mount LED Video Light Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

12 Marras 202428min

Integration Testing - The Why and How - .NET 204

Integration Testing - The Why and How - .NET 204

We talk to Martin Costello - a .NET developer with a QA background - about integration testing. We walk through the different types of automated testing and discuss the benefits and purpose for each type.Martin introduces us to useful tools he uses to write tests within the .NET ecosystem and discusses what we should and shouldn't be testing as well as the metrics that are important when evaluating how well tested your code is.LinksIntegration Testing Techniques for ASP.NET CoreReliably Testing HTTP Integrations in a .NET Application 1Writing Logs to xunit Test OutputIntegration testing AWS Lambda C# Functions with Lambda Test ServerIntegration Testing ASP.NET Core Resources Protected with Antiforgery Using Application PartsGitHub - coverlet-coverage/coverlet: Cross platform code coverage for .NETGitHub - martincostello/sqllocaldb: SQL LocalDB Wrapper is a .NET library providing interop with the Microsoft SQL Server LocalDB Instance APIGitHub - justeat/httpclient-interception: A .NET Standard library for intercepting server-side HTTP dependenciesGitHub - martincostello/xunit-logging: Logging extensions for xunitGitHub - martincostello/lambda-test-server: A NuGet package that provides an in-memory test server for testing AWS Lambda functionsGitHub - martincostello/dotnet-minimal-api-integration-testing: An example of integration testing ASP.NET Core 6 Minimal hosting and actionsTwitter: Martin Costello ( @martin_costello )PicksMartin- What We Do in the ShadowsShawn- Introducing Your Seattle KrakenWai- Young Sheldon (Official Site) Watch on CBSBecome a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

5 Marras 202449min

Creating Developer Courses with Taurius Litvinavicius - .NET 203

Creating Developer Courses with Taurius Litvinavicius - .NET 203

In this episode of Adventures in .NET, the panel discusses creating Udemy developer courses and .NET Core APIs with course author Taurius LitvinavicusLinkshttps://www.udemy.com/user/taurius-litvinavicius/PicksShawn - The Shannara ChroniclesCaleb - www.amazon.com/Boys-Season-Official-Teaser-TrailerWai - OraiTaurius - Azure DevOpsBecome a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

29 Loka 202438min

Modern Identity: From Internal Directories to Cross-Domain Identity Over the Public Internet with Bobby Johnson - .NET 202

Modern Identity: From Internal Directories to Cross-Domain Identity Over the Public Internet with Bobby Johnson - .NET 202

Bobby Johnson introduces us to modern identity and the use of external providers to outsource your authentication layer.LinksHave I Been Pwned: Check if your email has been compromised in a data breachPicksBobby  - Follow Bobby on Twitter @NotMyself , Github, WebsiteBobby  - The Live CodersBobby  - Rest ClientShawn - Follow Shawn on Twitter > @DotNetSuperheroShawn - Aussie Gold HuntersWai  - TIMELAPSE OF THE FUTURE: A Journey to the End of TimeBecome a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

22 Loka 202449min

Microservices Security in Action with Prabath Siriwardena - .NET 201

Microservices Security in Action with Prabath Siriwardena - .NET 201

Microservice architecture is very popular today. The panel talks with microservice security authors about their book and all aspects of securing microservices.LinksMicroservices Security in Action: Design secure network and API endpoint security for Microservices applications, with examples using Java, Kubernetes, and IstioAPIsecurity.ioPicksShawn - Oculus Quest 2 Elite StrapJoel - Ice Spiker Off Road Bike TiresNuwan - OAuth 2.1Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

15 Loka 202453min

.NET Microservices: From Code To Containers To Steeltoe with David Dieruf - .NET 200

.NET Microservices: From Code To Containers To Steeltoe with David Dieruf - .NET 200

In this episode of Adventures in .NET, guest David Dieruf joins the panel to discuss .NET microservices. They clear up the confusion about what microservices are and how to use them?LinksSteeltoeProject Tyedieruf.netPicksShawn  - Doom EternalWai - TandemDavid  - Identity ServerBecome a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

8 Loka 20241h 7min

Moving .NET Solutions to Kubernetes with Andrew Lock - .NET 199

Moving .NET Solutions to Kubernetes with Andrew Lock - .NET 199

In this episode of Adventures in .NETm we get deep into .NET with Andrew Lock. Kubernetes, .NET Framework to .NET Core and everyone’s favorite topic configuration. Join us and you are guaranteed to learn something new.Linkshttps://andrewlock.nethttps://helm.sh/docs/chart_best_practices/templateshttps://helm.shhttps://www.jetbrains.com/riderJoel Schauberthttps://www.peterwhitecycles.com/studdedtires.phpShawn Claboughhttps://www.oculus.com/quest-2CalebThe FindersWaiAdjustable Dumbbell Set Weights Dumbbells Home Gym Fitness HandAndrew Lockhttps://www.octotree.io/Steam: Streets of Rage 4Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-net--6102015/support.

1 Loka 202457min

Suosittua kategoriassa Liike-elämä ja talous

puheenaihe
mimmit-sijoittaa
psykopodiaa-podcast
sijotuskasti
rss-rahapodi
pomojen-suusta
ostan-asuntoja-podcast
raharesepti
herrasmieshakkerit
rss-neuvottelija-sami-miettinen
inderespodi
rss-tyoelaman-timantteja
leadcast
oppimisen-psykologia
hyva-paha-johtaminen
rss-myynti-ei-ole-kirosana
kasvun-kipuja
sijoituspodi
rss-paikoillenne-valmiit-laakikseen
rss-hyvat-tyypit-tyossa-asiaa-rekrytoinnista