Trwają zapisy do grupy

Programowanie .NET - kurs zaawansowany

3550 PLN+23% VAT (4366 PLN brutto / 1 os.)

Czas trwania szkolenia:4 dni (32h)

Poziom zaawansowania:

Kod kursu:NET/ADV

Dostępne terminy

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

29 lipca
Trwają zapisy na szkolenie

Trener:

Trener-Sages

Cena:

3550 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:

22 października
Trwają zapisy na szkolenie

Trener:

Marcin Sulecki

Cena:

3550 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?

Dostępne terminy

Interesują Cię inne terminy?

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

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…