The course is intended for all programmers who already have basic experience with programming in the C# language and want to acquire additional broader and practical knowledge and skills. In the course, you will learn to use modern extensions [...]
  • GOC2125
  • Duration 5 days
  • 50 ITK points
  • 8 terms
  • Praha (23 000 Kč)

    Brno (23 000 Kč)

    Bratislava (1 000 €)

  • Intermediate

The course is intended for all programmers who already have basic experience with programming in the C# language and want to acquire additional broader and practical knowledge and skills. In the course, you will learn to use modern extensions of the C# language, generic data types, delegates, events, extension methods, tuples, deconstruction, anonymous methods, lambda expressions, LINQ, attributes, but also records or, for example, compiler directives. You will also understand how memory management works with the Garbage Collector and learn to use compiler directives and Attributes, but many other interesting topics will be discussed. The course assumes basic knowledge of C# programming at least in the scope of the course [GOC2124].

»
  • Use basic command line tools and the .Net SDK
  • We will supplement the knowledge of object-oriented programming with a focus mainly on virtual methods, shadowing (shadowing / member hiding), abstract classes and the use of Interface
  • Use generic data types
  • We will get acquainted with selected extensions of the C# language of the latest versions such as Nullable Types, Tuples, Extension methods and many others
  • Use delegates, events, Lambda expressions and LINQ
  • You will learn to use compiler directives and Attributes
  • Understand memory and resource management and Garbage Collector
  • The course assumes knowledge and experience with programming in the C# language at the level of the GOC2124 course.
  • For developers switching from other languages, such as C++ or Java, we recommend studying the topics corresponding to the GOC2124 course in advance.

A brief overview of the .Net platform and the C# language

  • Overview of the .Net platform
  • Basic command line tools and .Net SDK

Inheritance in OOP

  • A brief overview of the basic concepts of PPE
  • Virtual methods and shadowing (member hiding)
  • Abstract classes
  • Using the Interface

Generic data types

  • Generic types and type safety
  • Custom generic classes, methods and other data types
  • Generic collections
  • Use of Constraints and more advanced techniques

operator overloading (optional)

  • Introduction to overloading operators
  • Implicit and explicit overloading

Delegates and events

  • Definition and use of delegates
  • Callback usage
  • Using events

An extension of the language of previous versions

  • Implicit declaration of variables
  • Partial Classes
  • Constructor Invocation
  • Nullable Types and Operators ??, ?., ?[
  • Tuples
  • Discards, Out variables, Deconstructions
  • Extension methods
  • Optional and named parameters
  • Object Initializers

Delegates Lambda expressions and LINQ

  • Anonymous types
  • Lambda expressions
  • Generic delegates
  • IEnumerable and IQueryable
  • Closure (optional)

Pattern Matching (optional)

  • Pattern Matching Overview
  • Switch Pattern Matching
  • Is Pattern Matching
  • Switch Pattern Expression and Expression Bodies

Records

  • Introduction to Records
  • Mutability
  • Value Equality

Assemblies and attributes

  • Compiler directives and conditional compilation
  • Assemblies and the use of attributes

Memory and Resource Management and Garbage Collector

  • Garbage Collector
  • Implicit and Explicit release of resources
  • Interface IDisposable
  • Using a IDisposable
  • Weak references (optional)
  • Generation (optional)

Reading and writing data using streams (optional)

  • Introduction to streams
  • Using the FileStream class
  • BinaryReader and BinaryWriter
  • StreamReader and StreamWriter
  • Use of FileInfo, DirInfo classes
  • Using the FileSystemWatcher class
  • Using the CryptoStream class (optional)

Data serialization

  • Introduction to serialization
  • Shallow and deep serialization
  • XML serialization
  • Serialization Binary
  • JSON serialization
Current offer
Training location
Course language

The prices are without VAT.