T1116

Ladda ner som PDF

C# Master Class

So, you know C#. You've learned the syntax, learned how to write classes and interfaces, know your lists from your lambdas, and have some experience using both the C# language and the .Net framework. Perhaps you took our Beginner and Intermediate courses - or you already know what they teach. What next?

The C# Masterclass moves beyond the syntax and semantics. Its focus is on applying C#, along with selected parts of the .Net framework, to build elegant, extensible, multi-paradigm solutions to everyday problems. You'll learn how to apply classes and interfaces to achieve solid OO designs, how to make data time-travel with lambda expressions, how to re-cast traditionally imperative problems as concise Linq queries, how to tame asynchrony with using the async/await keywords - and much more!

Note! The course starting on 29th of November is split in 2 + 1 days.

Day 1-2: 29-30th November
Day 3: 13th of December 

Audience

This course is aimed at those who have a working knowledge of C# and want to learn to apply the language in a more powerful way, taking advantage of all it has to offer.

Prior knowledge

Participants should be comfortable with programming in C#. Some previous experience with generics, lambda expressions, and Linq queries is strongly suggested.

Language

The course is taught in Swedish (Contact us if you prefer English).

Courseware

Course material in English included.

What you will learn

Introduction

  • Roslyn compiler
  • Introduction to .NET Core

Being Effective with Visual Studio 2015

  • Navigation and editing tips and tricks
  • Using the debugger

Lambda and Delegate refresher

  • Delegates
  • Lambda expressions
  • Func and Action

C# 6 and C#7

  • Learn all the new features in C#6
  • What's new in C#7

OO and dynamic

  • The nature of object orientation
  • Encapsulation and hiding
  • Dynamic objects vs. class-based OO

Classes: outside-in

  • What comes first: classes, methods, or fields?
  • Invariants
  • Command-Query Separation

Design patterns

  • Decorator pattern
  • Chain of Responsibility
  • The strategy pattern

Dependency Inversion

  • The Dependency Inversion Principle
  • Coping with time by following the DIP
  • Coping with persistence by following the DIP
  • DI containers

Generic Programming

  • Creating generic classes
  • Inheriting from generic classes
  • Using generic constraints
  • Generic interfaces

Higher Order Programming

  • What is Higher Order Programming?
  • Closure semantics, and its uses
  • Function generators

Reflection and attributes

  • Application domains, assemblies, types, and members
  • Reflection types
  • Walkthrough: dynamic object builder
  • Implementing custom attributes

Event driven architecture

  • Complexity and boundaries
  • Event aggregator pattern
  • Publish/subscribe

Encoding and Unicode

  • Understanding unicode
  • UTF-8 and ... Läs mer
What you will learn

Introduction

  • Roslyn compiler
  • Introduction to .NET Core

Being Effective with Visual Studio 2015

  • Navigation and editing tips and tricks
  • Using the debugger

Lambda and Delegate refresher

  • Delegates
  • Lambda expressions
  • Func and Action

C# 6 and C#7

  • Learn all the new features in C#6
  • What's new in C#7

OO and dynamic

  • The nature of object orientation
  • Encapsulation and hiding
  • Dynamic objects vs. class-based OO

Classes: outside-in

  • What comes first: classes, methods, or fields?
  • Invariants
  • Command-Query Separation

Design patterns

  • Decorator pattern
  • Chain of Responsibility
  • The strategy pattern

Dependency Inversion

  • The Dependency Inversion Principle
  • Coping with time by following the DIP
  • Coping with persistence by following the DIP
  • DI containers

Generic Programming

  • Creating generic classes
  • Inheriting from generic classes
  • Using generic constraints
  • Generic interfaces

Higher Order Programming

  • What is Higher Order Programming?
  • Closure semantics, and its uses
  • Function generators

Reflection and attributes

  • Application domains, assemblies, types, and members
  • Reflection types
  • Walkthrough: dynamic object builder
  • Implementing custom attributes

Event driven architecture

  • Complexity and boundaries
  • Event aggregator pattern
  • Publish/subscribe

Encoding and Unicode

  • Understanding unicode
  • UTF-8 and UTF-16 encoding
  • Homographs

Regular expressions

  • Concept, syntax, practical examples
  • Multiline
  • Groups and captures

Advanced Linq

  • Approaching problems from a Linq perspective
  • Method syntax vs. query syntax
  • Lazy evaluation: benefits and dangers
  • SelectMany, Join and Group By operations
  • Set operations

Asynchrony

  • What is asynchronous programming?
  • CPU-bound vs. IO-bound operations
  • The Task abstraction, and task-based asynchrony
  • Continuation Passing Style
  • async and await keywords
"Har inte mycket att tillägga förutom att läraren var grymt duktig." 
/ en nöjd deltagare 18/5-2015
Citat från tidigare deltagare

Utbildningen levereras i samarbete med

Kursfakta

Kurs-ID: T1116
Längd: 3 dagar
Pris exkl moms: 28 450 kr
Inregistrering: 09.00
Kursstart: 09.30
Kursslut (ca): 17.00

Frågor om kursen?

Har du frågor om kursens innehåll, leveransdatum/ort eller behöver en företagsanpassad variant? Fyll i formuläret nedan!


Kan betalas med:
TRAINING CARD

Ort och datum

Stockholm
15 jan-17 jan
GO!
Boka nu!
26 nov-28 nov
Boka nu!
Göteborg
15 jan-17 jan
GO! R
Boka nu!
26 nov-28 nov
R
Boka nu!
Cloud Access
i Läs mer

Delta på kursen från ditt hem, jobb eller annan plats.

15 jan-17 jan
Boka nu!
26 nov-28 nov
Boka nu!

Tipsa