Oreilly - C# Async Fundamentals LiveLessons (Video Training)
by | Released November 2013 | ISBN: 0133463141
C# Async Fundamentals LiveLessons provides developers with a practical introduction to Async and is a one-stop-shop to get you on the road to programming asyncronously.As one of the most important new feature in the C# language, Async is an integral part of the Windows Runtime library. Developers will need to use the async / await features in most, if not all, of their upcoming development efforts. With async methods baked into more and more of the underlying libraries, developers will need strong skills around these features.In this video training, C# expert and bestselling author Bill Wagner teaches the basics of C# async and await, and the Task Asynchronous Programming Model. Lesson 1 provides the basis for putting async and await into practice in your daily development efforts. All the remaining Lessons are designed to take you through a series of common mistakes developers make using async and await.In Lesson 2 “Sync over Async”, you'll examine where sync over async can creep into an application, and learn how to remove to ensure you don't suffer from its effects. In Lesson 3 you'll explore the perils of async void methods, an issue at the heart of the C# compiler team. In Lesson 4 he'll get you up-to-speed on techniques to ensure that you avoid forcing async methods to run serially. In Lesson 5 you'll learn techniques for unit testing async methods.And to tie it all together, Lesson 6 will recap the fundamental practices and the implementation of async and await.Skill LevelThis topic should be of interest to anyone developing using the C# language. This includes Windows Server, Windows 8, Windows Phone, MonoDroid, and Mono Touch developers at the following skill level:BeginnerIntermediateWhat You Will LearnLearn to avoid the sync over async anti-pattern.Learn how to ensure that you can recover from errors in async tasks.Learn to structure async code for better responsiveness.Learn how to construct unit tests for async code.Learn how to construct async APIs that express clarity to your users.Who Should Take This CourseDevelopers looking for a practical introduction to C# async. Course Requirements Some experience with C# programming.A passing familiarity with async /await features is helpful.About the Author: Bill Wagner has spent his entire career in the software industry, spanning both technical and business roles. Bill's technical time is spent between curly braces, primarily with C#. He's the author of the bestselling “Effective C#”, now in its second edition, and “More Effective C#”. His articles have appeared in MSDN Magazine, the C# Developer Center, Visual C++ Developer's Journal, Visual Studio Magazine, ASP.NET Pro, .NET Developer's Journal and more. He's written hundreds of technical articles and actively blogs on technical and business topics. Bill is also a Microsoft Regional Director. He spent eight years as a self-employed consultant before co-founding SRT Solutions with Dianne Marsh. Over the past decade, SRT Solutions has grown into a premier software development company, amassing 4 FastTrack awards (2011, 2010, 2008, 2007), the Michigan 50 Companies to Watch award (2011), and making the Inc 500/5000 list (2011 and 2012). Bill was also awarded Automation Alley's Emerging Technology Leader award in 2011.After a successful exit from SRT Solutions, Bill now spends his time helping developers improve their skills. Show and hide more
- Introduction
- Introduction to C# Async Fundamentals LiveLessons 00:04:29
- Lesson 1: Overview of the Syntax and the Task Asynchronous Programming Model
- Learning objectives 00:05:05
- 1.1 Overview of the syntax and the TAP programming model 00:10:46
- Lesson 2: Sync over Async
- Learning objectives 00:05:27
- 2.1 Lab review 00:11:34
- 2.2 Task.Wait blocking API 00:04:27
- 2.3 IAsyncResult.GetResults blocking API 00:04:41
- 2.4 Task.Result blocking API 00:04:05
- 2.5 The payoff of responsiveness 00:06:32
- Lesson 3: Async Void
- Learning objectives 00:05:51
- 3.1 Did my task finish? 00:10:42
- 3.2 Removing Async Void code smell 00:13:37
- 3.3 Review of app behavior changes 00:04:02
- Lesson 4: Async Serial Tasks
- Learning objectives 00:05:02
- 4.1 Await results, not task launch 00:04:33
- 4.2 Searching for unnecessary awaits 00:13:38
- 4.3 ConfigureAwait and Context affinity 00:16:01
- 4.4 When APIs need the UI context 00:06:25
- Lesson 5: Unit Testing Async Methods
- Learning objectives 00:04:07
- 5.1 Testing logic and the fast path 00:10:10
- 5.2 Testing the slow path and task completion order 00:11:16
- 5.3 Testing for failed tasks 00:10:26
- Lesson 6: Putting What You've Learned About Async to Practice
- Learning objectives 00:04:06
- 6.1 Putting what you've learned about Async to practice 00:07:42
- Summary
- Summary of C# Async Fundamentals LiveLessons 00:01:58
Show and hide more 9780133463149.c.async.fundamentals.OR.part1.rar
9780133463149.c.async.fundamentals.OR.part2.rar