Programmazione asincrona (corso completo)

Programmazione asincrona (corso completo)

La programmazione asincrona è diventata recentemente non meno sviluppata della classica programmazione parallela e nel mondo di JavaSript, sia nei browser che in Node.js, la comprensione delle sue tecniche ha occupato uno dei posti centrali nel plasmare la visione del mondo degli sviluppatori. Porto alla vostra attenzione il corso olistico e più completo con una spiegazione di tutti i metodi diffusi di programmazione asincrona, adattatori tra loro e aperture ausiliarie. Attualmente è composto da 23 lezioni, 3 relazioni e 28 repository con molti esempi di codice su github. Totale circa 17 ore di video: collegamento alla playlist.

Spiegazioni allo schema

Il diagramma (sopra) mostra le connessioni tra i diversi modi di lavorare con l'asincronia. I blocchi colorati si riferiscono alla programmazione asincrona, e in bianco e nero mostrano metodi di programmazione parallela (semafori, mutex, barriere, ecc.) e reti di Petri, che, come la programmazione asincrona e il modello ad attori, sono approcci diversi per implementare il calcolo parallelo (sono riportato nel diagramma solo per determinare con maggiore precisione il luogo della programmazione asincrona). Il modello ad attori è legato alla programmazione asincrona perché anche l'implementazione di attori senza multithreading ha diritto di esistere e serve a strutturare codice asincrono. Le linee tratteggiate collegano gli eventi e la coda simultanea ai callback perché queste astrazioni sono basate sui callback, ma formano comunque approcci qualitativamente nuovi.

Argomenti delle lezioni

1. Programmazione asincrona (panoramica)
2. Timer, timeout ed EventEmitter
3. Programmazione asincrona utilizzando callback
4. Iterazione asincrona non bloccante
5. Asincronia con la libreria async.js
6. Asincronia sulle promesse
7. Funzioni asincrone e gestione degli errori
8. Adattatori asincroni: promisify, callbackify, asyncify
9. Collettori di dati asincroni
10. Errori non gestiti nelle promesse
11. Il problema dello stacktrace asincrono
12. Generatori e generatori asincroni
13. Iteratori e iteratori asincroni
14. Annullamento delle operazioni asincrone
15. Composizione della funzione asincrona
16. Attendi allora, agile e leggero
17. Coda asincrona simultanea
18. Costruttore aperto del modello (costruttore rivelatore)
19. Futuro: asincronia sui futuri senza stato
20. Differito: asincronia sui differenziali con stato
21. Modello di attore
22. Osservatore del modello (Osservatore + Osservabile)
23. Asincronia in RxJS e flussi di eventi

Sotto ogni video sono presenti collegamenti a repository con esempi di codice spiegati nel video. Ho cercato di dimostrare che non è necessario ridurre tutto a un'astrazione di asincronia. Non esiste un approccio universale all'asincronia e per ciascun caso è possibile selezionare i metodi che consentiranno di scrivere codice in modo più naturale per questa attività specifica. Naturalmente questo corso verrà integrato e chiedo a tutti di suggerire nuovi argomenti e contribuire con esempi di codice. L'obiettivo principale del corso è mostrare come costruire astrazioni asincroniche dall'interno e non solo insegnare come usarle. Quasi tutte le astrazioni non sono prese dalle biblioteche, ma sono fornite nella loro implementazione più semplice e il loro lavoro viene analizzato passo dopo passo.

Solo gli utenti registrati possono partecipare al sondaggio. AccediPer favore.

Qual è la tua opinione sul corso?

  • Guarderò tutto il corso

  • Guarderò in modo selettivo

  • A me basta un solo approccio

  • Contribuirò al corso

  • Non mi interessa l'asincronia

8 utenti hanno votato. 1 utente si è astenuto.

Fonte: habr.com

Aggiungi un commento