Advanced .NET with C#

BT104


5 Days

Download Full Syllabus Request a Quote
All Our Courses Now Also LIVE

Course Outline

The .NET platform is everywhere, not just on desktop but on mobile and web. The C# language is evolving rapidly thanks to the .NET Compiler Platform (“Roslyn”). Developers need to learn and adapt quickly to the evolving ecosystem. This course provides experienced C# developers with a

deeper understanding of the CLR and the .NET platform, while utilizing advanced features of the platform. The course includes hands-on lab exercises to make learning more concrete

Upcoming Meetings

Modules

Reflection
  • Types at runtime
  • Metadata and Reflection
  • Obtaining type information
  • Dynamic invocation
  • Custom attributes
  • Introduction to the Managed Extensibility Framework (MEF)
Generics
  • The need for Generics
  • Boxing and Unboxing
  • Generic Types
  • Generic Methods
  • Generic Constraints
  • Generic Collections
  • Generic Interfaces
  • Generic Variance (C# 4)
Delegates, Events and Lambdas
  • Delegate Basics
  • Delegate Internals
  • Generic delegates
  • Anonymous delegates and closures
  • Lambda Expressions
C# 3.0 and LINQ
  • Partial types and partial methods
  • Iterators
  • Expression Trees
  • C# 3.0 basic features
  • Language Integrated Query
  • LINQ to XML
  • LINQ to Entities
Resource Management
  • CLR Memory management
  • Object creation and destruction
  • How the GC Works
  • Finalizers
  • The Dispose Pattern
  • Controlling GC
  • The Large Object Heap
  • Monitoring Memory
  • Best Practices
Processes, Thread and AppDomains
  • Windows Process
  • Windows Thread
  • CLR AppDomains
  • Assemblies and AppDomains
  • Crossing AppDomains
Threading and Synchronization
  • Native vs. Managed Threads
  • Thread Creation and Control
  • Thread Synchronization
  • Thread Local Storage
  • Kernel Object Synchronization
  • The Thread Pool
Parallel & Asynchronous Programming
  • Introduction to Tasks
  • Tasks vs. Threads
  • Working with Tasks
  • Task Schedulers
  • The Parallel Class
  • Parallel LINQ
  • Concurrent Collections
  • Asynchronous Calls
  • Async Patterns in .NET
  • Using C# 5.0 for asynchrony
C# 6.0 and C# 7.x
  • C# Evolution
  • The .NET Compiler Platform
  • C# 6.0 Useful features
  • C# 7.x Useful features
  • What’s expected in C# 8.0?

Prerequisites

  • At least one year developing with C# in .NET 3.5+

Upcoming Meetings

Build effective multithreading applications”
Download Full Syllabus

Target Audience

    • Israel
    • Poland
    • USA
    • Russia
    • India
    Skip to content