Trwają zapisy do grupy

Szkolenie: Programowanie .NET - kurs zaawansowany

Szkolenie "Programowanie .NET - kurs zaawansowany" wprowadzi uczestników w zaawansowane zagadnienia programowania w C# na platformie .NET. Szkolenie stanowi konytunację kursu podstawowego.

  • Trenerzy praktycy
  • Kameralne grupy

Czas trwania szkolenia:4 dni (32h)

Poziom zaawansowania:

Kod kursu:NET/ADV

Dostępne terminy szkolenia

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

24 lutego
Trwają zapisy na szkolenie

Trener:

Trener-Sages

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:

26 maja
Trwają zapisy na szkolenie

Trener:

Trener-Sages

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:

25 sierpnia
Trwają zapisy na szkolenie

Trener:

Trener-Sages

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

  • Zdobycie wiedzy na temat zaawansowanych aspektów platformy .NET oraz języka C#

  • Przygotowanie uczestników do efektywnej i wydajnej pracy z platformą .NET

  • Przekazanie wiedzy z zakresu dobrych praktyk w procesie wytwarzania oprogramowania z użyciem języka C#

  • Zaznajomienie uczestników z najpopularniejszymi bibliotekami używanymi w pracy ze środowiskiem .NET


Dla kogo?

  • Szkolenie kierowane jest do programistów chcących pogłębić swoją wiedzę z zakresu platformy .NET i języka C# oraz osób programujących dotychczas w innych językach chcących rozpocząć pracę ze środowiskiem .NET


Zalety

  • Zajęcia ukierunkowane jest na poznanie zaawansowanych zagadnień związanych z językiem C# oraz zdobycie praktycznych umiejętności z zakresu programowania współbieżnego i sieciowego

  • Zakres szkolenia obejmuje najważniejsze tematy oraz biblioteki, których znajomość konieczna jest do sprawnej i wydajnej pracy z platformą .NET

  • Uczestnicy szkolenia stawią czoła najczęściej pojawiającym się w codziennej pracy problemom i zadaniom

  • Dzięki skupieniu się na zagadnieniach specyficznych dla platformy .NET, szkolenie pozwala na wsparcie procesu migracji programistów z innych technologii

  • Bardzo duży nacisk na praktyczną stronę programowania

  • Program szkolenia dopasowany do najnowszych trendów rynkowych

  • Poza samą technologią .NET omówione zostaną najpopularniejsze biblioteki używane w większości komercyjnych projektów

  • Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań

  • Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką

  • Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how


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…