Async Ekspert
Polska wersja kursu online!
Twoja ścieżka do poznania asynchroniczności w .NET

Cena:

1899zł

+ 23% VAT

Async Ekspert w liczbach:

623 uczniów

tylko jeden zwrot

81 lekcji

w tym
19 dem
9 zadań

1704 minut

w tym
225 dem
211 webinarów

917 slajdów

Opis kursu

Kiedy środowisko .NET otrzymywało kolejne elementy związane z programowaniem asychronicznym i współbieżnym, odczucia i odbiór związany z nimi był mieszany. Z jednej strony otrzymywaliśmy niesamowite możliwości. Z drugiej powodowało to potrzebę nauczenia się i stosowania całkowicie nowych elementów języka jak i mechanizmów zawartych w samym .NET...

Szkoląc inżynierów na szkoleniach otwartych i zamkniętych, dyskutując na konferencjach, a także przeglądając dane ostatniej ankiety Dotnetos, w której wzięło udział niemal 500 osób z całego świata, zauważyliśmy że programowanie asynchroniczne i współbieżność jest dla Was bardzo ważne. Jest tematem, którego inżynierowie związani z .NET chcą się uczyć. Sami jesteśmy tego samego zdania. Jest dziś wręcz niewykonalne programowanie w .NET bez zrozumienia współbieżności i techniki async-await.

Aby pomóc Ci w zdobyciu tej wiedzy, zrozumieniu podstaw jak i zasad rządzących światem asynchroniczności i współbieżności, przygotowaliśmy kurs online Async Expert. Async Expert to 10 solidnych tygodni, w których przeprowadzimy Cię od podstaw asynchroniczności aż po synchronizację i kolekcje współbieżne. Aby umożliwić Ci weryfikację zdobytej wiedzy, przygotowaliśmy odpowiednio dobrane prace domowe. Dodatkowym bonusem są Dodatkowe materiały od naszych mentorów (Marc Gravel, Daniel Marbach, Steve Cleary), pomogą odpowiedzieć na Twoje dodatkowe pytania. Całość dopełni komunikacja z nami poprzez platformę Community, gdzie nie tylko będziesz mógł kontakotwać się z nami, ale także z innymi uczestnikami kursu. Zapraszamy!

Cena:

1899zł

+ 23% VAT

Zobacz opinie o kursie i dołącz do nas!

Plan kursu

1

Wstęp

  1. Omówienie kursu
  2. Podstawy BenchmarkDotNet
  3. Demo: sharplab.io
  4. Demo: ConcurrencyVisualizer
  5. Demo: Parallel Stacks/Tasks
  6. Zadanie domowe
2

Wątki

  1. Threads
  2. ThreadPool
  3. Demo: Używanie ThreadPool z różnymi API
  4. Demo: Używanie ThreadPool.BindHandle
  5. Zadanie domowe
3

Podstawy asynchroniczności

  1. Task API
  2. Podstawy async-await (oraz dema)
  3. Async eliding
  4. ValueTask
  5. Task API i async
  6. Zadanie domowe
4

Asynchroniczność 2

  1. Wykonanie, konteksty, scheduler
  2. Demo: Zróbmy deadlocka
  3. Demo: własny SynchronizationContext
  4. Demo: Scheduler w Azure Durable Functions
  5. Sync vs async
  6. Demo: Używanie starych synchronicznych APIs
  7. Fire and forget
  8. TaskCompletionSource
  9. Demo: Opakowanie API opartego o callbacki (Event-Based Asynchronous Pattern)
  10. Awaitables
  11. Wartości lokalne
  12. Demo: StringBuilder i ThreadLocal
  13. Demo: Zakresy AsyncLocal
  14. Demo: Przekazywanie stanu
  15. Zadanie domowe
5

Asynchroniczność 3

  1. Agregacja wykonania Tasków
  2. Demo: oczekiwanie w kolejnosć wykonania
  3. Demo: Parallel.For z async vs Task.WhenAll
  4. Demo: testowanie z użyciem TaskCompletionSource oraz Task.WhenAny
  5. IAsyncDiposable
  6. IAsyncEnumerable
  7. Demo: gRPC oraz IAsyncEnumerable
  8. Demo: New SQL client
  9. Demo: Implementacja timeoutu z WhenAny
  10. Zadanie domowe
6

Współbieżność niskiego poziomu

  1. Hardware
  2. volatile
  3. Demo: Używanie epok w ConcurrentQueue
  4. Interlocked
  5. Demo: Prosta pula z Interlocked.Exchange
  6. Bariery i alignment
  7. Demo: Rezerwacja zakresu bufora w Aeron.NET z Interlocked.CompareExchange
  8. Zadanie domowe
7

Synchronizacja

  1. Wzajemne wykluczanie (exclusive locking)
  2. Demo: dekompilacja locka
  3. Demo: Nieblokujące użycie Monitor.TryEnter
  4. Semaphore oraz SemaphoreSlim
  5. Demo: Limitowanie obiektów Task z SemaphoreSlim
  6. ReaderWriterLock
  7. Demo: Budowa własnej puli obiektów string z ReaderWriterLock
  8. Wait handles
  9. CountdownEvent
  10. Barrier
  11. Asynchroniczne mechanizmy wykluczania
  12. Demo: implementacja AsyncLock
  13. Zadanie domowe
8

Współbieżne struktury danych

  1. Podstawy
  2. BlockingCollection
  3. Demo: BlockingCollection z CancellationToken
  4. ConcurrentStack
  5. Demo: Cache obiektów z ConcurrentStack
  6. ConcurrentQueue
  7. Demo: Pula pamięci w Kestrel ASP.NET z ConcurrentQueue
  8. ConcurrentDictionary
  9. Demo: Efektywny cache z użyciem ConcurrentDictionary.GetOrAdd
  10. ConcurrentBag
  11. Zadanie domowe
9

Nowe współbieżne struktury danych

  1. Problematyczna natura .NET streams
  2. Pipelines
  3. Demo: TcpEcho z Pipelines
  4. Channels
  5. Demo: Użycie Channel w ASP.NET Core MsQuickListener
  6. Zadanie domowe
10

Zagadnienia dodatkowe

  1. Demo: IValueTaskSource z Interlocked.CompareExchange
  2. Demo: IValueTaskSource bazujący na tablicy i tokenie
  3. ValueTask i używanie puli w .NET 5
  4. ManualResetValueTaskSourceCore
  5. False Sharing
  6. F# async vs C# async
  7. Podsumowanie kursu

Co zyskuję?

🌶 Dostęp do 10-tygodniowego kursu Async Expert - dostęp do pełnego materiału z kursu Async Expert

🌶 Materiały od Mentorów - Dodatkowe materiały od międzynarodowych Mentorów programu, specjalistów w zakresie programowania asynchronicznego.

🌶 Dostęp do platformy - dostęp do platformy oraz dedykowanej strony dyskusyjnej, która umożliwia kontakt z instruktorem i innymi uczestnikami kursu.

🌶 Dostęp do repozytorium - poza nagraniami, interakcją z innymi uczestnikami i dodatkowymi materiałami od Mentorów programu, otrzymujesz dostęp do repozytorium z przykładami kodu.

Cena:

1899zł

+ 23% VAT

Autorzy kursu

Szymon Kulec


Współzałożyciel Dotnetos, Microsoft MVP, architekt, speaker


Z zamiłowaniem łączę architekturę i oprogramowanie wysokiej wydajności. Chętnie dzielę się szeroką wiedzą na temat współczesnych architektur, systemów rozproszonych oraz zasad rządzących niskopoziomowym światem niezwykle wydajnych aplikacji.

Konrad Kokosa


Współzałożyciel Dotnetos, Microsoft MVP, autor, speaker


Jestem autorem książki Pro .NET Memory Management, a przy tym niezależnym konsultantem, blogerem, prelegentem i ćwierkaczem [patrz: Twitter]. Swoją pasją dzielę się jako trener w obszarze .NET, specjalizując się m.in. wydajności i diagnostyki aplikacji.

Łukasz Pyrzyk


Współzałożyciel Dotnetos, Microsoft MVP, autor, speaker


Jestem software developerem zainteresowanym tematami wydajności, mikroserwisami oraz optymalizacjami. Do tego prelegentem (bardziej niż blogerem) i aktywnym użytkownikiem Twittera.

Mentorzy kursu

Marc Gravell


Microsoft MVP, Starszy główny developer oprogramowania w Stack Overflow


Pracował z Async'em w .NET na wielu obszarach i od samego początku: Async jest głównym komponentem i wątkiem w całej jego bibliotece. Przez swoje zaangażowanie, utrzymywanie Dapper'a, 'StackExchange.Redis' oraz 'protobuf-net' Marc pozostaje wieloletnim Microsoft MVP! Stack Overflow buduje od 10 lat skupiając się na jego wydajności, dostępie do danych i łączności w .NET!

Daniel Marbach


Microsoft MVP, Inżynier oprogramowania w Particular Software


Programowaniem asynchronicznym przekształca umysły i czasoprzestrzeń. Występował na wielu konferencjach i forach z tematem asynchronicznego programowania oraz rozwoju motywowanego jakością. Lubi podnosić ciężary, pić ciemno paloną kawę, bawić się z synem i kodować, dopóki nie wyłączy mu się (zaprogramowany) router.

Steve Cleary


Microsoft MVP, Autor "Concurrency in C# Cookbook”


Źródło odpowiedzi na pytania dotyczące Async’a na Stack Overflow. W wolnym czasie jest mężem, tatą… i programuje. Obecnie posługuje się C#/C++/JavaScript’em, ale pozostaje zainteresowany wieloma językami.

Cena:

1899zł

+ 23% VAT

Pytania i odpowiedzi

🌶 Jaki język programowania będzie używany w przykładach?

Wszystkie przykłady jak i cała nasza praca będzie wykonywana w języku C#.

🌶 Jaka wersja .NET będzie używana w przykładach?

Będziemy bazowali na przykłady w wersji LTS .NET Core 3.1 z zaznaczeniem różnic względem .NET Framework

🌶 Kiedy rozpoczyna się program i jak długo trwa?

Kurs dostepny jest od razu po zakupie. Dostępny jest cały materiał, jednak zalecamy oglądanie jednego modułu na tydzień, aby Cię nie przytłoczyć i aby cała grupa przechodziła materiał w tym samym momencie.

🌶 W jakiej formie jest ten kurs?

Kurs jest w formie wideo. Nagrania zamieszczone są na platformie. Po podaniu loginu i hasła masz dostęp do swojego konta. Poza nagraniami platforma udostępnia też forum, dzięki któremu możesz porozumiewać się z prowadzącym i innymi uczestnikami. Linki, hasła i login zostaną podane na tydzień przed uruchomieniem kursu.

🌶 Jak długo będę miał dostęp do kursu?

Otrzymasz dożywotni dostęp do tej edycji kursu wraz z aktualizacjami.

🌶 Co, jeżeli nie jestem zadowolony z kursu?

Jeżeli obejrzałeś mniej niż 30% kursu i uznasz, że kurs nie jest dla Ciebie, otrzymasz zwrot pieniędzy. Masz na to 30 dni od daty zakupu. Po prostu napisz na [email protected], a zwrócimy Ci 100% pieniędzy.

🌶 Czy dostanę cały kurs od razu?

Tak. Cały materiał jest dostępny od razu. Zalecamy oglądanie jednego modułu na tydzień, aby Cię nie przytłoczyć i aby cała grupa przechodziła materiał w tym samym momencie.

🌶 Czy otrzymam fakturę?

Tak, za zakup otrzymasz fakturę VAT. Faktura zostanie wysłana w ciągu kilku dni na adres e-mail podany przy zamówieniu.

🌶 Jak mogę zapłacić za kurs?

Płatność odbywa się przez nas sklep. Dowolna forma płatności wspierana przez sklep jest dla nas ok.

🌶 Czy mogę zapłacić później, na raty, itp.?

Nie. Jeżeli nie posiadasz środków w tym momencie, dołączenie później będzie możliwe, ale kurs będzie kosztował więcej.

🌶 Ile osób może korzystać z jednego konta podczas kursu?

Z jednego konta, tworzonego na podstawie adresu e-mail podanego podczas zakupu kursu może korzystać jedna osoba. Jeśli jesteś zainteresowany zakupem większej ilości dostępów, napisz do nas na adres [email protected]

🌶 Co jeżeli mam z czymś problem lub coś jest niejasne?

Napisz do mnie na adres e-mail: [email protected]

Podziel się!

Jeżeli uważasz, że Async Expert to świetna dawka wiedzy, podziel się ze znajomymi. Wystarczy, że użyjesz jednego z przycisków poniżej!
Dziękujemy!

Check our other products!