Duration
2 days (10:00 AM - 5:00 PM Eastern)
Cost
$650.00
Online Schedule
  • Dec 9 - Dec 10
  • Jan 2 - Jan 3
  • Feb 3 - Feb 4
  • Mar 2 - Mar 3

Details

Subjects Covered

Prerequisites

Setup Requirements

Details

Course Details

This two-day course is designed for the experienced programmer to help you quickly come up to speed on the C# language. It is current to Visual Studio 2019, .NET Framework 4.7.2 and C# 8.0. Important newer features such as dynamic data type, named and optional arguments, nullable reference types, asynchronous programming keywords, and tuples are covered.

This course concisely covers the essentials of programming using Microsoft’s C# programming language. It starts with an overview of the .NET architecture and the basics of running C# programs in a .NET environment. Then you learn C# language essentials and object-oriented programming in C# as well as how C# relates to the .NET Framework. You learn about delegates and events and get a succinct introduction to creating GUI programs using Windows Forms. The course concludes by covering the newer features in C#. 

The course is practical, with many example programs and a progressively developed case study. The goal is to quickly bring you up to speed in writing C# programs. 

Subjects Covered

C# Essentials

  • Introduction to .NET
    • What is .NET?
    • .NET Framework and .NET Core
    • Application Models
    • Managed Code
    • Visual Studio 2019
    • C# Console and GUI Programs
  • C# Overview for the Sophisticated Programmer
    • First C# Console Application
    • Namespaces
    • Data Types
    • Conversions
    • Control Structures
    • Subroutines and Functions
    • Parameter Passing
    • Strings
    • Arrays
    • Implicitly Typed Variables
    • Console I/O
    • Formatting
    • Exception Handling
  • Object-Oriented Programming in C#
    • Classes
    • Access Control
    • Methods and Properties
    • Asymmetric Accessor Accessibility
    • Static Data and Methods
    • Constant and Readonly Fields
    • Auto-Implemented Properties
    • Inheritance
    • Overriding Methods
    • Abstract Classes
    • Sealed Classes
    • Access Control and Assemblies
  • C# and the .NET Framework
    • Components
    • Interfaces
    • System.Object
    • .NET and COM
    • Collections
    • IEnumerable and IEnumerator
    • Copy Semantics in C#
    • Generic Types
    • Type-Safe Collections
    • Object Initializers
    • Collection Initializers
    • Anonymous Types
    • Attributes
  • Delegates and Events
    • Delegates
    • Anonymous Methods
    • Lambda Expressions
    • Random Number Generation
    • Events
  • Introduction to Windows Forms
    • Creating Windows Applications Using Visual Studio 2019
    • Partial Classes
    • Buttons, Labels, and Textboxes
    • Handling Events
    • Listbox Controls
  • Newer Features in C#
    • Dynamic Data Type
    • Named and Optional Arguments
    • Variance in Generic Interfaces
    • Asynchronous Programming Keywords
    • New Features in C#
    • Nullable Reference Types
  • Using Visual Studio 2019
    • Signing in to Visual Studio
    • Overview of Visual Studio 2019
    • Creating a Console Application
    • Project Configurations
    • Debugging
    • Multiple-Project Solutions
  • LINQ
    • What Is LINQ?
    • Basic Query Operators
    • Filtering
    • Ordering
    • Aggregation

Prerequisites

Before Taking this Class

The student should be an experienced application developer or architect. Some background in object-oriented programming would be helpful.

Setup Requirements

Software/Setup For this Class

Course examples require Microsoft Visual Studio 2019 and Windows 7sp1 or higher. The free Visual Studio Community 2019 can be used.

Onsite Training

Do you have five (5) or more people needing this class and want us to deliver it at your location?