Last year, I sat down with my colleague and friend Daren May for to create a Microsoft Virtual Academy training series that beginner developers could use to get a solid introduction to C#, called Programming in C#.
This course steams through the myriad of C# features and concepts, giving a comprehensive survey of the topic to would-be students. It was brilliant for me to have to remember all these things that made me love C# in the first place, and a chance to introduce new developers and remind seasoned ones.
I hope you like it.
(01) OOP, Managed Languages and C#
[09:27] - Object Oriented Programming
[14:45] - What is a Managed Language?
[23:47] - Why C# for OOP?
[43:20] - C# Syntax
(02) Complex Types, Object Interfaces and Inheritance
[01:06] - Classes and Structs
[11:09] - Class and Partial Class demo
[18:02] - Properties
[24:48] - Methods, signatures, and events
[40:00] - Object Interfaces and Inheritance
[48:54] - Generics
(03) Controlling Programmatic Flow, and Manipulating Types and Strings
[01:01] - Controlling Programmatic Flow
[06:36] - Iteration statements
[14:00] - Jump statements
[21:09] - Switch statements
[26:46] - Manipulating Types
[36:06] - Working with strings
(04) Code Reflection and Working with Garbage Collection
[04:42] - How to get Type data
[11:30] - Reflection demo
[21:42] - Working with Garbage Collection
[28:12] - Disposable objects
[39:28] - Dispose versus Close versus Stop
(05) Type and Value Validation, and Encryption Techniques
[01:27] - Type and Value validation
[11:27] - Data contracts
[23:59] - Unhandled exceptions
[31:50] - Encryption Techniques
[43:15] - Hashing
[49:41] - Symmetric encryption
(06) Splitting Assemblies, WinMD, Diagnostics and Instrumentation
[01:07] - What are assemblies?
[13:12] - Sharing assemblies
[21:27] - WinMD Demo
[37:06] - What is instrumentation?
(07) Interacting with the File System, and Leveraging Web Services
[01:26] - Interacting with the File System
[13:03] - How to modify files
[16:11] - What are web services?
[27:34] - REST services and serialization
[43:34] - Asychronous programming
(08) Using LINQ to Objects and XML, and Serialization
Best of luck!
[02:06] - ASYNC and AWAIT
[07:51] - What is a database?
[33:20] - What is LINQ?
[36:54] - LINQ Demo