La programación asincrónica se ha convertido, en tiempos recientes, en un campo tan desarrollado como la programación paralela clásica. En el mundo de JavaScript, tanto en navegadores como en Node.js, la comprensión de sus técnicas ha adquirido un papel central en la formación del pensamiento de los desarrolladores. Les presento un curso integral y completo que explica todos los métodos ampliamente utilizados de programación asincrónica, los adaptadores entre ellos y los diversos huecos auxiliares. Actualmente, consta de 23 conferencias, 3 ponencias y 28 repositorios con numerosos ejemplos de código en GitHub. En total, alrededor de 17 horas de video: .
Explicaciones del esquema
En el esquema (arriba) se muestran las conexiones entre diferentes maneras de trabajar con la asincronía. Los bloques de color se refieren a la programación asincrónica, mientras que en blanco y negro se muestran los métodos de programación paralela (semaforos, mutexes, barreras, etc.) y redes de Petri, que, al igual que la programación asincrónica y el modelo de actores, son diferentes enfoques para implementar cálculos paralelos (se presentan en el esquema solo para determinar más precisamente el lugar de la programación asincrónica). El modelo de actores está vinculado a la programación asincrónica porque la implementación de actores sin multihilos también tiene derecho a existir y sirve para estructurar el código asincrónico. Las líneas punteadas relacionan eventos y colas concurrentes con callbacks, ya que estas abstracciones se basan en callbacks, pero aun así forman enfoques cualitativamente nuevos.
Temas de las conferencias
Debajo de cada video hay enlaces a repositorios con ejemplos de código que se analizan en el video. He tratado de demostrar que no hay que reducir todo a una única abstracción de asincronía. No existe un enfoque universal para la asincronía, y para cada caso se pueden seleccionar los métodos que permitan escribir código de forma más natural para esta tarea específica. Por supuesto, este curso se va a complementar y pido a todos que propongan nuevos temas y contribuyan con ejemplos de código. La tarea principal del curso es mostrar cómo construir abstracciones de asincronía desde dentro, no solo enseñar a utilizarlas. Prácticamente todas las abstracciones no provienen de bibliotecas, sino que se presentan en su implementación más simple y se descompone su funcionamiento paso a paso.
Solo los usuarios registrados pueden participar en la encuesta. , por favor.
¿Cuál es su opinión sobre el curso?
Veré todo el curso
Veré selecciones
Me basta con un enfoque
Contribuiré al curso
No me interesa la asincronía
8 usuarios votaron. 1 usuario se abstuvo.
Fuente: habr.com
