C# Language Internals - Part 2 (2014)
MP4 | AVC 438kbps | English | 1024x768 | 15fps | 4h 38mins | AAC stereo 127kbps | 793 MB
Genre: Video Training
In the second part of this course, we take .NET developers behind the scenes of advanced C# language features to get a deeper insight into the language, the Intermediate Language (IL) it compiles into, and the Common Language Runtime (CLR) it runs on. By studying language internals, you can make better design choices involving advanced language features, solve hard debugging puzzles quicker, and understand the performance ramifications of these language features. This is the second part of a two-part course.
├───01. Investigating Iterators
│ 01_01-Introducing Iterators.mp4
│ 01_02-The State Machine Behind Iterators.mp4
│ 01_03-Looking at a Simple Iterator in ILSpy.mp4
│ 01_04-Iterators Returning IEnumerable.mp4
│ 01_05-Object Lifetimes in Iterators.mp4
│ 01_06-Analyzing Space Leaks With SOS.mp4
│ 01_07-Tidbits About Iterators.mp4
│ 01_08-Building a LINQ Debugger Using Iterators.mp4
│ 01_09-Summary.mp4
│
├───02. Asynchronous Methods
│ 02_01-Recap of Asynchronous Methods.mp4
│ 02_02-Asynchronous Method Builders.mp4
│ 02_03-Under the Hood of Asynchronous Method Builders.mp4
│ 02_04-The Role of Await Expressions.mp4
│ 02_05-Revisiting the Awaiter Pattern.mp4
│ 02_06-The Compilation of Await Expressions.mp4
│ 02_07-Stack Spilling Explained.mp4
│ 02_08-Demonstrating Stack Spilling.mp4
│ 02_09-Summary.mp4
│
├───03. Expression Trees
│ 03_01-Expression Tree Essentials.mp4
│ 03_02-Code Generated for Expression Trees.mp4
│ 03_03-LINQ Query Providers.mp4
│ 03_04-Building a Simple Query Provider.mp4
│ 03_05-Code Generation Using Expression Trees.mp4
│ 03_06-Inspecting Lightweight Code Generation in SOS.mp4
│ 03_07-Tidbits About Expression Trees.mp4
│ 03_08-Building the InfoOf Operator.mp4
│ 03_09-Summary.mp4
│
├───04. Dynamic Programming in C#
│ 04_01-Introduction to C# Dynamic.mp4
│ 04_02-Dynamic Interop With IronPython.mp4
│ 04_03-The Role of Language Binders.mp4
│ 04_04-Spotting Language Binders in ILSpy.mp4
│ 04_05-Call Sites and Caching.mp4
│ 04_06-Inspecting Call Sites Caches Using SOS.mp4
│ 04_07-Dynamic Quirks.mp4
│ 04_08-Summary.mp4
│
├───05. Hidden Gems in System.Runtime.CompilerServices
│ 05_01-Overview of the System.Runtime.CompilerServices Namespace.mp4
│ 05_02-Introducing the ConditionalWeakTable Type.mp4
│ 05_03-Object Lifetimes in ConditionalWeakTable Collections.mp4
│ 05_04-Building Extension Properties using ConditionalWeakTable.mp4
│ 05_06-Influencing Inlining Using MethodImplOptions.mp4
│ 05_07-The IndexerNameAttribute Type.mp4
│ 05_08-Getting to Know Caller Info Attributes.mp4
│ 05_09-Under the Hood of Caller Info Attributes.mp4
│ 05_10-Summary.mp4
│
├───06. COM Interop, No PIA, and WinRT
│ 06_01-COM Interop and the History of PIAs.mp4
│ 06_02-Basics of Using No PIA.mp4
│ 06_03-Behind the Scenes of No PIA.mp4
│ 06_04-Using No PIA Across Class Libraries.mp4
│ 06_05-Windows Runtime Essentials.mp4
│ 06_06-Type Projections in Windows Runtime.mp4
│ 06_07-Inspecting WinMD Components.mp4
│ 06_08-Windows Runtime Asynchrony and Events.mp4
│ 06_09-Under the Hood of WinRT Event Handling.mp4
│ 06_10-Summary.mp4
│
└───07. Not-So Secret Language Features
07_01-Revisiting the CLR Type System.mp4
07_02-The Danger of Pointers.mp4
07_03-Unsafe C# Code.mp4
07_04-Introducing Typed References.mp4
07_05-Creating Typed References.mp4
07_06-Dereferencing Typed References.mp4
07_07-Using Typed References.mp4
07_08-Variable Length Argument Lists.mp4
07_09-Summary.mp4
发布日期: 2015-01-19