Die asynchrone Programmierung ist in letzter Zeit nicht weniger entwickelt als die klassische parallele Programmierung, und in der Welt von JavaSript, sowohl in Browsern als auch in Node.js, hat das Verständnis seiner Techniken einen zentralen Platz bei der Gestaltung der Weltanschauung der Entwickler eingenommen. Ich mache Sie auf einen ganzheitlichen und vollständigsten Kurs mit einer Erläuterung aller weit verbreiteten Methoden der asynchronen Programmierung, Adaptern zwischen ihnen und Hilfsöffnungen aufmerksam. Es besteht derzeit aus 23 Vorträgen, 3 Berichten und 28 Repositories mit vielen Codebeispielen auf Github. Insgesamt ca. 17 Stunden Video:
Erläuterungen zu dem Schema
Das Diagramm (oben) zeigt die Zusammenhänge zwischen verschiedenen Arbeitsweisen mit Asynchronität. Die farbigen Blöcke beziehen sich auf asynchrone Programmierung und s/w zeigt parallele Programmiermethoden (Semaphoren, Mutexe, Barrieren usw.) und Petrinetze, die, wie asynchrone Programmierung und das Akteurmodell, unterschiedliche Ansätze zur Implementierung paralleler Berechnungen darstellen (sie sind es). (im Diagramm nur angegeben, um den Ort der asynchronen Programmierung genauer zu bestimmen). Das Akteurmodell ist mit der asynchronen Programmierung verwandt, da auch die Implementierung von Aktoren ohne Multithreading eine Daseinsberechtigung hat und der Strukturierung von asynchronem Code dient. Die gestrichelten Linien verknüpfen Ereignisse und die gleichzeitige Warteschlange mit Rückrufen, da diese Abstraktionen auf Rückrufen basieren, aber dennoch qualitativ neue Ansätze bilden.
Vorlesungsthemen
Unter jedem Video finden Sie Links zu Repositories mit Codebeispielen, die im Video erklärt werden. Ich habe versucht zu zeigen, dass es nicht nötig ist, alles auf eine Abstraktion der Asynchronität zu reduzieren. Es gibt keinen universellen Ansatz für Asynchronität, und Sie können für jeden Fall die Methoden auswählen, mit denen Sie Code für diese spezielle Aufgabe natürlicher schreiben können. Natürlich wird dieser Kurs ergänzt und ich bitte alle, neue Themen vorzuschlagen und Codebeispiele beizusteuern. Das Hauptziel des Kurses besteht darin, zu zeigen, wie man Asynchronitätsabstraktionen von innen heraus erstellt, und nicht nur zu lehren, wie man sie verwendet. Fast alle Abstraktionen stammen nicht aus Bibliotheken, sondern werden in ihrer einfachsten Implementierung angegeben und ihre Arbeit Schritt für Schritt analysiert.
An der Umfrage können nur registrierte Benutzer teilnehmen.
Was ist Ihre Meinung zum Kurs?
-
Ich werde mir den gesamten Kurs ansehen
-
Ich werde selektiv suchen
-
Mir reicht ein Ansatz
-
Ich werde zum Kurs beitragen
-
Ich bin nicht an Asynchronität interessiert
8 Benutzer haben abgestimmt. 1 Nutzer enthielten sich der Stimme.
Source: habr.com