Advanced topics in C# and .NET   : From languages enhancements, through framework internals, Resources management and SOA
Experienced .NET Developers (at least 2 years)
}

40 Hours

Embedded Software Development

h

Certificate: No

Price: contact us for more details

Don't Be Shy

Leave your details and one of our customer service representatives will respond to you as soon as possible

Course Outline

Reflection and Code Generation

  • Reflection basics and the Type class
  • Creating instances dynamically
  • Getting and setting data using reflection
  • Creating and using Custom Attributes
  • Code generation basics

Generics

  • Collections Overview ( Boxing/Unboxing)
  • The need for generics
  • Writing and using generic types
  • Generic methods & interfaces
  • Generic collections
  • Generic interfaces
  • Applying constraints
  • Other aspects of generic programming
  • Nullable types

Advanced Delegates and Events

  • Working with delegates
  • Creating your own delegate types
  • Generic delegates
  • Dynamic delegates
  • Anonymous delegates
  • Lambda expressions
  • Events

C# 5.0 & LINQ

  • Partial types and partial methods
  • Iterators
  • Expression Trees
  • C# 5.0 basic features
  • Extension methods
  • LINQ to Objects
  • LINQ Operators
  • LinqT to SQL vs. Entity Framework
  • LINQ to XML

Managing Resources

  • Garbage collection and its impacts
  • Generations
  • Finalizers
  • The Dispose pattern
  • The using statement

 

 

 

 

Processes, AppDomains and Threads

  • Processes
  • Virtual Memory
  • Application Domains vs. processes
  • Threads and AppDomains
  • AppDomains and objects

 

Multithreading

  • Managed vs. Unmanaged threads
  • Thread scheduling
  • Creating and managing threads
  • The Thread class
  • Thread synchronization
  • Synchronization kernel objects
  • The Thread Pool
  • Multithreading best practices
  • Winforms BackgroundWorker Control (Optional)

Tasks

  • Introduction to Tasks
  • Creating tasks
  • Cancelling tasks
  • Tasks & Exceptions
  • Task schedulers
  • The Parallel class
  • Parallel LINQ

Modern SOA techniques:

  • Introduction to SOA
  • WCF Basics (The ABC)
  • Service call lifecycle ( Serialization to Desirialization)
  • Dynamics service calling ( without service reference)
  • SOAP vs. REST
  • RESTful Service with Web API

.NET Core – Introduction (If time permits)

  • Introduction to the .NET Core platform
  • Basics of modern web application architecture using .NET Core