-
Learning by doing
-
Trainers with practical experience
-
Classroom training
-
Detailed course material
-
Clear content description
-
Tailormade content possible
-
Training that proceeds
-
Small groups
In the course C# Programming participants learn to program in the .NET platform with the C# (C Sharp) language. The emphasis of the course is on C# syntax, program structure and implementation details. The acquired C# knowledge can be applied in both the .NET Framework and .NET Core. The most recent version of C# is used in the course.
The course C# Programming starts with a discussion of the essentials of the .NET Framework and .NET Core. Covered are the Common Language Runtime, managed code, assemblies and garbage collection.
Next attention is paid to variables, data types, operators and loops. Calling methods and dealing with arrays and strings is also part of the course.
Then object-oriented programming with classes and objects is discussed. Concepts such as encapsulation, inheritance and polymorphism are explained. There is also attention for error handling by means of exception handling.
Subsequently the participants learn to work with multiple threads and the implementation of concurrent tasks. The coordination between threads through synchronization mechanisms such as events and Monitor Wait and Pulse is also discussed.
The program of the course C# Programming also includes a number of special classes such as delegates, lambdas, properties, indexers and attributes. And attention is paid to Regular Expressions with the RegExp class.
The C# Programming course concludes with a discussion of parameterized types and methods called generics. Generics are often used in collection classes that are next on the program. Finally attention is paid to File I/O with C# libraries.
Â
This course is intended for aspiring developers who want to learn the C# programming language and its usages in .NET applications.
No specific prior knowledge is required for this course. Experience in other programming languages such as JavaScript, Java or C++ is beneficial to understanding.
The theory is presented on the basis of presentation slides. Demos are used to clarify the discussed concepts. The theory is interspersed with exercises. The course material is in English.
Participants receive an official certificate C# Programming after successful completion of the course.
Module 1 : C# Intro |
Module 2 : Language Syntax |
Module 3 : Classes and Objects |
C# Versions .NET Architecture .NET Core Common Language Runtime Managed Code C# Compilation and Execution Managed Execution Assemblies MSIL and Metadata Garbage Collection .NET Framework Class Library |
C# Data Types Variables and Scope Operators Flow Control if and switch Statement for and foreach Loops while Statement do while Statements break and continue Strings and Arrays Methods and Parameter Passing |
Class Definition Encapsulation Access Modifiers Constructors Creating Objects Fields and Properties static Modifier Overloading Constants Common Type System Value and Reference Types |
Module 4 : Inheritance |
Module 5 : Exception Handling |
Module 6 : Namespaces |
Derived Classes Overriding Methods Hiding Methods Polymorphism Abstract Classes Interfaces Implementing Interfaces Type Casting Implicit and Explicit Casting |
Error Conditions Exceptions in C# Exception Handling Syntax Exception Flow Exceptions Template Exceptions Object finally Clause Throwing Exceptions User Defined Exceptions |
Defining Namespaces Using Namespaces Nested Namespaces Namespace Directory Assemblies and Modules Assembly Manifest Types of Assemblies Global Assembly Cache Strong Names |
Module 7 : Threads |
Module 8 : Synchronization |
Module 9 : Special Classes |
Thread Benefits and Drawbacks C# Thread Model Thread Class Thread Stack Thread Delegate Autonomous Classes Passing Parameters Thread Naming Background Threads Thread Exceptions Thread Methods |
Concurrent Method Invocation Blocking on Monitor Lock Statement Mutual Exclusion in C# Joining Threads Interrupting Threads DeadLock Wait Handles Interthread Communication Condition Synchronization Monitor Wait and Pulse |
What is a Delegate? Multicasting Delegates and Events Enumerations Extension Methods Partial Classes Attributes Attribute Parameters Custom Attributes Nullable Types Static Classes |
Module 10 : Utility Classes |
Module 11 : Generics |
Module 12 : Collections |
Object Class Boxing and Unboxing Overriding Equals Math Class DateTime Structure Regex Class Process and Environment Class Localizing Dates and Numbers |
What are Generics? Need for Generics Generic Class Syntax Multiple Generic Parameters Bounded Types Runtime Type Parameter Constraints Generic Methods |
Framework Classes Predefined Collections Array and List Class Queue and Stack Class Linked List Sorted List Dictionary Hashtable |
Module 13 : File I/O |
||
I/O Classes Accessing Text Files Using Directive Accessing Binary Files Buffered Streams Serialization Accessing File System Directory Classes |