C# 8 Development - Virtual. 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'll 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
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
• 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
Målgruppe for kurset:
• At least 6 months programming experience
• Familiarity with OO concepts would be an advantage
Exam 70-483 Programming in C#