C# 8 is new in Visual Studio 2019, and is the latest evolution of Microsoft's primary programming language. This course covers the latest language features in C# 8, and i... [+]
C# 8 is new in Visual Studio 2019, and is the latest evolution of Microsoft's primary programming language. This course covers the latest language features in C# 8, and includes a comparison of .NET Framework and .NET Core. You'll get a deep and broad understanding of C# as a programming language, and gain confidence to explore the richness of the .NET platform including asynchronous programming, LINQ, and EF.What you will learn:
Essential C# syntax
Implementing object-oriented designs in C#
Using generics, collection classes, and exceptions
Using LINQ and EF
Introduction to asynchronous programming
Creating REST services using Web API
What's new in C# 8
Course Outline
Introduction to C# and .NET: .NET Framework building blocks; Hello world in C#; Using Visual Studio 2019; .NET Framework vs. .NET Core
Core C# Programming Constructs: Variables, operators, and statements; Reference types vs. value types; Conversions; Nullable types; Using the Console and String classes; Flow-of-control; Pattern matching; Using implicit types
More C# Programming Constructs: Defining methods; Input, output, and optional parameters; Local functions; Method overloading; Arrays; Structures
Defining and Using Classes: Defining classes; Defining constructors and finalizers; Defining properties; Creating and disposing objects; Defining constants and read-only fields; Static members; Partial classes/methods; Deconstruction; Managing NuGet packages
Inheritance and Polymorphism: Defining base classes and derived classes; Overriding methods; Abstract classes; Interfaces
Exception Handling: Defining Try/Catch/Finally blocks; Throwing exceptions; Throw expressions; Defining new exception classes; Defining Using blocks
Creating Collections of Objects: Overview of generics; Using List collections; Using Dictionary collections
Delegates, Events, and Lambdas: Overview; Defining simple delegates; Defining and handling events; Using lambda expressions; Expression-bodied members
Additional Language Features: Operator overloading; Extension methods; Initializer syntax for objects, lists, and dictionaries; Anonymous types; Tuples
Introduction to LINQ: The role of LINQ; Simple LINQ query expressions; Using LINQ with collections; LINQ query operators
Using the Entity Framework: EF classes and DbContext; Implementing relationships; Managing data; Additional techniques
Introduction to Asynchronous Programming: Understanding the async and await keywords; Implementing asynchronous code
Creating REST Services using Web API: Introduction to REST and Web API; Implementing Web API controllers; Content negotiation; Best practices
What’s New in C# 8: Nullable reference types; Improved pattern matching; Asynchronous streams; Miscellaneous new language features
Andy Olsen - author of the courseAndy is a freelance consultant and instructor based in the UK, working mostly in the City of London and Oxford. Andy has been working with .NET since the Beta 1 days and has extensive experience in many facets of .NET development including WCF, WPF, WF, ASP.NET MVC Web development, and mobile applications. Andy has designed and written many Microsoft Official Curriculum courses in the last decade, and has been engaged as author and technical reviewer with Apress on some of their biggest selling books. [-]
Les mer