Trwają zapisy do grupy

Szkolenie: Programowanie .NET - kurs zaawansowany

Zaawansowany kurs programowania .NET w C# przygotowuje do pracy z kolekcjami, LINQ, wielowątkowością, asynchronicznością, programowaniem sieciowym, testami jednostkowymi i nowoczesnymi bibliotekami .NET

  • Trenerzy praktycy
  • Kameralne grupy

Czas trwania szkolenia:4 dni (32h)

Poziom zaawansowania:

Kod kursu:NET/ADV

architektura-aplikacjiprogramowanie-dotnetc-sharp-zaawansowanydotnet-zaawansowany

Dostępne terminy szkolenia

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

10 marca
Trwają zapisy na szkolenie

Trener:

Marcin Sulecki

Cena:

3905 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

12 maja
Trwają zapisy na szkolenie

Trener:

Marcin Sulecki

Cena:

3905 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

8 września
Trwają zapisy na szkolenie

Trener:

Marcin Sulecki

Cena:

3905 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

17 listopada
Trwają zapisy na szkolenie

Trener:

Marcin Sulecki

Cena:

3905 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Forma szkolenia

Interesuje Cię szkolenie stacjonarne?

Powiadom o kolejnych terminach

Interesuje Cię szkolenie w innym terminie?

Programowanie .NET - kurs zaawansowany

Cele szkolenia

  • Szkolenie przygotowuje do samodzielnego projektowania i implementowania zaawansowanych rozwiązań w środowisku .NET z wykorzystaniem języka C#

  • Szkolenie uczy stosowania dobrych praktyk programistycznych oraz efektywnego wykorzystania bibliotek i narzędzi dostępnych na platformie .NET

  • Szkolenie rozwija umiejętność rozwiązywania problemów związanych z programowaniem współbieżnym, asynchronicznym i sieciowym w C#

  • Szkolenie pokazuje, jak wykorzystywać nowoczesne techniki i wzorce projektowe w codziennej pracy programisty .NET


Dla kogo?

  • Programiści C# z doświadczeniem w programowaniu obiektowym, chcący rozwinąć umiejętności w zakresie zaawansowanych technik .NET

  • Osoby programujące w innych językach, posiadające podstawową znajomość C# i Visual Studio, planujące migrację do środowiska .NET

  • Specjaliści IT realizujący projekty wymagające pracy z wielowątkowością, asynchronicznością lub komunikacją sieciową


Efekty kształcenia

  • Uczestnik projektuje zaawansowane aplikacje z użyciem kolekcji, LINQ i typów generycznych

  • Uczestnik analizuje i wdraża mechanizmy wielowątkowości oraz asynchroniczności w .NET

  • Uczestnik implementuje komunikację sieciową i obsługuje protokoły HTTP w aplikacjach .NET

  • Uczestnik stosuje wzorce projektowe oraz techniki programowania aspektowego

  • Uczestnik testuje i weryfikuje poprawność kodu przy użyciu narzędzi do testów jednostkowych

  • Uczestnik konfiguruje i wykorzystuje narzędzia do logowania i kontroli zależności


Wymagania

  • Umiejętność posługiwania się środowiskiem Visual Studio

  • Znajomość założeń programowania obiektowego

  • Podstawowa znajomość języka C#


W cenie otrzymasz:

  • Materiały szkoleniowe

  • Certyfikat ukończenia szkolenia

  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Program szkolenia

Pobierz program w PDF

Kolekcje

  • Podstawowe kolekcje: listy, słowniki

  • Kolejki, stosy

  • Kolekcje współbieżne - ConcurrentBag, ConcurrentQueue, ConcurrentDictionary

  • Definiowanie własnych kolekcji

Typy generyczne

  • Tworzenie klas generycznych

  • Definiowanie metod generycznych

Kowariancja i Kontrawariancja

Typy anonimowe

  • Delegaty

  • Wyrażenia lambda

  • Anonimowe delegaty i domknięcia w C#

  • Tworzenie anonimowych obiektów

  • Func/Action

Typ dynamic i Dynamic Language Runtime

Metody rozszerzające

Method Chaining

  • Wprowadzenie do wzorca Method Chaining

  • Definiowanie własnych interfejsów Fluent

  • Omówienie zalet interfejsów Fluent i przypadków zastosowania

LINQ

  • Czym jest LINQ

  • Przegląd podstawowych operatorów LINQ

  • LINQ to Objects

  • Łączenie wyrażeń LINQ z wykorzystaniem Method Chaining

  • Operatory projekcji

  • Agregacja

  • Grupowanie

  • Złączenia

  • Zalety stosowania LINQ

  • Własne operatory i rozszerzenia

Mechanizm refleksji

  • Idea stosowania refleksji

  • Pobieranie informacji o składowych typów

  • Tworzenie obiektów z wykorzystaniem mechanizmu refleksji

  • Wykorzystanie atrybutów

Wielowątkowość

  • Zastosowanie wielowątkowości w aplikacjach

  • Zarządzanie cyklem życia wątku - tworzenie, usypianie, kończenie

  • Synchronizacja wątków

  • Zakleszczenia

  • Pule wątków

  • Dobre praktyki związane z wielowątkowością

Metody asynchroniczne

  • Wykorzystanie Task Parallel Library

  • Użycie async, await

Wprowadzenie do przetwarzania współbieżnego

  • Idea przetwarzania współbieżnego

  • Instrukcje Parallel LINQ

  • Pętle współbieżne

  • Wydajność przetwarzania współbieżnego

Wprowadzenie do programowania sieciowego

  • Gniazda sieciowe

  • Wykorzystanie klas TcpClient i TcpListener do komunikacji sieciowej

  • Wykorzystanie wielowątkowości w programowaniu sieciowym

Komunikacja HTTP

  • Wykorzystanie komunikacji HTTP w usługach sieciowych

  • Użycie HTTPWebRequest/HTTPWebResponse

  • Zastosowanie uproszczonego interfejsu obsługi HTTP - WebClient

Programowanie aspektowe (PostSharp)

  • Idea i zalety programowania aspektowego

  • Wprowadzenie do biblioteki PostSharp

  • Definiowanie własnych aspektów

Kontener IoC (opcjonalne)

  • Wzorzec Inversion of Control

  • Wprowadzenie do kontenera Autofac

  • Rejestrowanie składowych kontenera

  • Rozwiązywanie zależności

  • Automatyczne wstrzykiwanie zależności

  • Zalety i przypadki użycia wzorca IoC

Testy jednostkowe (opcjonalne)

  • Idea testów jednostkowych i ich wpływ na niezawodność kodu

  • Porównanie najpopularniejszych bibliotek do testów jednostkowych dostępnych w środowisku .NET - MS Test, NUnit, XUnit

  • Tworzenie testów jednostkowych, klasa Assert

  • Uruchamianie testów jednostkowych, wprowadzenie do Test Explorer

  • Użycia rozszerzeń FluentAssertions

  • Wprowadzenie do metodyki Test-driven development

Biblioteka logująca NLog (opcjonalne)

  • Znaczenie modułu logowania w systemach produkcyjnych

  • Poziomy logowania

  • Tworzenie pliku konfiguracyjnego NLog

  • Definiowanie celów oraz reguł logowania

  • Formatowanie wyjściowe logów

Autorem szkolenia jest Rafał Kaszczuk

Programista .NET z wieloletnim doświadczeniem. W swojej karierze stawiał czoła całemu spektrum projektów - od systemów księgowych dla branży finansowej po serwery multiplayer obsługujące miliony graczy w branży GameDev. Specjalizujący się w szczególności w tematach rozproszonych systemów SOA z wykorzystaniem ASP .NET oraz WCF. Związany z bazą MongoDB niemal od początku jej istnienia. Posiadacz certyfikatów M101J MongoDB for Java Developers, M101P MongoDB for Developers, M036 New Features and Tools…

Wybrane opinie

Przeczytaj pozytywne opinie pochodzące z ankiet satysfakcji z naszych szkoleń wypełnianych wyłącznie przez ich uczestników po realizacji usługi

4.8
Ikona podpowiedziŚrednia ocen Sages w serwisie Google Ocena pochodzi ze średniej ocen Sages w serwisie Google i nie jest weryfikowana

9.11.2025

Uczestnik szkoleniaProgramowanie .NET - kurs zaawansowany

Izabela Gańko

Dowiedziałam się bardzo dużo, konkretnie, w razie wątpliwości trener bez problemu tłumaczył w inny, bardziej dla mnie zrozumiały sposób :) No i udało się przerobić praktycznie cały materiał + trochę ponad :)

Więcej opinii