Programowanie asynchroniczne stało się w ostatnim czasie równie rozwiniętą dziedziną jak klasyczne programowanie równoległe, a w świecie JavaScript, zarówno w przeglądarkach, jak i w Node.js, zrozumienie jego technik zajmuje centralne miejsce w kształtowaniu poglądów programistów. Przedstawiam Państwu pełny i najbardziej kompleksowy kurs z wyjaśnieniem wszystkich powszechnie stosowanych metod programowania asynchronicznego, adapterów między nimi oraz pomocniczych fragmentów. Składa się obecnie z 23 wykładów, 3 prezentacji i 28 repozytoriów z wieloma przykładami kodu na GitHubie. Łącznie około 17 godzin wideo: .
Wyjaśnienia do schematu
Na schemacie (powyżej) przedstawione są powiązania między różnymi sposobami pracy z asynchronicznością. Kolorowe bloki dotyczą programowania asynchronicznego, a czarno-białe przedstawiają metody programowania równoległego (semafory, mutexy, bariery itp.) oraz sieci Petriego, które, podobnie jak programowanie asynchroniczne i model aktorów, są różnymi podejściami do realizacji obliczeń równoległych (są podane na schemacie jedynie w celu dokładniejszego określenia miejsca programowania asynchronicznego). Model aktorów jest związany z programowaniem asynchronicznym, ponieważ realizacja aktorów bez wielowątkowości również ma prawo istnieć i służy do strukturalizacji kodu asynchronicznego. Linia przerywana łączy zdarzenia i konkurencyjną kolejkę z callbackami, ponieważ te abstrakcje opierają się na callbackach, ale jednak tworzą jakościowo nowe podejścia.
Tematy wykładów
Pod każdym wideo znajdują się linki do repozytoriów z przykładami kodu omówionymi w filmie. Starałem się pokazać, że nie należy wszystkiego sprowadzać do jednej abstrakcji asynchroniczności. Nie istnieje uniwersalne podejście do asynchroniczności, a dla każdego przypadku można znaleźć metody, które pozwolą pisać kod w sposób bardziej naturalny dla tego konkretnego zadania. Oczywiście kurs będzie uzupełniany, i proszę wszystkich o proponowanie nowych tematów i wkład w przykłady kodu. Głównym celem kursu jest pokazanie, jak budować abstrakcje asynchroniczności od podstaw, a nie tylko nauczenie ich stosowania. Praktycznie wszystkie abstrakcje nie pochodzą z bibliotek, lecz prezentowane są w najprostszej formie i ich działanie jest omawiane krok po kroku.
Tylko zarejestrowani użytkownicy mogą brać udział w ankiecie. , proszę.
Jakie jest Twoje zdanie o kursie?
Obejrzę cały kurs
Obejrzę wybiórczo
Jedno podejście mi wystarcza
Będę wkładał wkład w kurs
Nie interesuję się asynchronicznością
8 użytkowników zagłosowało. 1 użytkownik wstrzymał się od głosu.
Źródło: habr.com
