Eşzamansız programlama son zamanlarda klasik paralel programlamadan daha az gelişmiş değildir ve JavaSript dünyasında, hem tarayıcılarda hem de Node.js'de, onun tekniklerini anlamak, geliştiricilerin dünya görüşünü şekillendirmede merkezi yerlerden birini almıştır. Asenkron programlamanın tüm yaygın yöntemlerinin, aralarındaki adaptörlerin ve yardımcı açıklıkların açıklandığı bütünsel ve eksiksiz bir kursu dikkatinize sunuyorum. Şu anda github'da birçok kod örneği içeren 23 ders, 3 rapor ve 28 depodan oluşmaktadır. Toplamda yaklaşık 17 saatlik video:
Şemanın açıklaması
Diyagram (yukarıdaki) eşzamansız çalışmayla çalışmanın farklı yolları arasındaki bağlantıları göstermektedir. Renkli bloklar asenkron programlamaya atıfta bulunur ve s/b paralel programlama yöntemlerini (semaforlar, muteksler, engeller vb.) ve asenkron programlama ve aktör modeli gibi paralel hesaplamanın uygulanmasına yönelik farklı yaklaşımlar olan Petri ağlarını gösterir (bunlar şemada yalnızca asenkron programlamanın yerini daha doğru belirlemek için verilmiştir). Aktör modeli asenkron programlamayla ilgilidir çünkü çoklu iş parçacığı olmayan aktörlerin uygulanmasının da var olma hakkı vardır ve asenkron kodun yapılandırılmasına hizmet eder. Noktalı çizgiler olayları ve eşzamanlı kuyruğu geri aramalara bağlar çünkü bu soyutlamalar geri aramalara dayanmaktadır, ancak yine de niteliksel olarak yeni yaklaşımlar oluşturur.
Ders konuları
Her videonun altında, videoda açıklanan kod örneklerini içeren depolara bağlantılar bulunur. Her şeyi tek bir eşzamansızlık soyutlamasına indirgemeye gerek olmadığını göstermeye çalıştım. Eşzamansızlığa evrensel bir yaklaşım yoktur ve her durumda, bu özel görev için daha doğal bir şekilde kod yazmanıza olanak sağlayacak yöntemleri seçebilirsiniz. Elbette bu kursa destek olacak ve herkesten yeni konular önermesini ve kod örnekleriyle katkıda bulunmasını rica ediyorum. Kursun temel amacı, yalnızca bunların nasıl kullanılacağını öğretmek değil, eşzamansız soyutlamaların içeriden nasıl oluşturulacağını göstermektir. Hemen hemen tüm soyutlamalar kütüphanelerden alınmamış, en basit uygulamalarıyla verilmiş ve çalışmaları adım adım analiz edilmiştir.
Ankete sadece kayıtlı kullanıcılar katılabilir.
Kurs hakkındaki düşünceleriniz nedir?
-
Bütün dersi izleyeceğim
-
Seçerek bakacağım
-
Benim için tek bir yaklaşım yeterli
-
Kursa katkıda bulunacağım
-
Asenkronizasyonla ilgilenmiyorum
8 kullanıcı oy kullandı. 1 kişi çekimser kaldı.
Kaynak: habr.com