Rx - Aszinkron programozás magas fokon

írta: oO7, 11 éve

Tavaly nyáron nagy lelkesedéssel belekezdtem egy jegyzet írásába a Reactive Extensions-ről, mivel bár a keretrendszer ámulatba ejtő dolgokra képes, ennek ellenére azonban minimális irodalom található hozzá az interneten.

Ez a projekt novemberben érte el azt a mérföldkövet, amikor már egy magabiztos 90%-os, vállalható állapotban volt az írás, nekem viszont zh –és vizsgaidőszak következett és beláthatatlan idő múlva tudtam volna csak azt a bizonyos maradék 10%-ot befejezni. Ekkor kiraktam a devPortal-ra ezt a „preview” állapotot és legnagyobb meglepetésemre rengetegen töltötték le, és nagyon sok jó visszajelzést és építő jellegű kritikát kaptam a könyvről.

Most, egy jó fél év elteltével örömmel jelentem be, hogy elkészült a „Reactive Extensions – Aszinkron programozás magas fokon” könyvem végleges verziója.

Ízelítőként és magyarázatként arra, hogy mi is az a Reactive Extensions, álljék itt a bevezető:

Modern alkalmazások fejlesztésénél (legyen az vékony- vagy vastagkliens, vagy kiszolgáló oldali szoftver) egy bizonyos ponton mindenképpen elérjük a szinkron módon futó kód korlátait – ekkor kerülünk szembe az aszinkron és eseményvezérelt programozás nehézségeivel. Ha az alkalmazás megfelelő minőségének megőrzése érdekében az I/O műveleteket, webszolgáltatás-hívásokat, vagy épp egyéb erőforrás igényes műveleteket aszinkron módon kezeljük, a kód lényegesen bonyolultabbá válik. A megszokottól eltérő módszereket kell használnunk a koordinációra, a kivételkezelésre, és felvetődik a megszakíthatóság, valamint a párhuzamosan futó aszinkron feladatok szinkronizációjának problémája is.

A Reactive Extensions (Rx) egy olyan osztálykönyvtár, melynek segítségével aszinkron és/vagy eseményvezérelt programot készíthetünk úgy, hogy az adatfolyamot úgynevezett megfigyelhető (Observable) szekvenciaként reprezentáljuk, melyen LINQ-jellegű műveleteket hajthatunk végre úgy, hogy az esetleges versenyhelyzeteket úgynevezett ütemezőkkel (Scheduler) oldjuk fel.

Ezt a könyvet azoknak javasolnám, akik szeret(né)nek robosztus, hibatűrő, és mégis szép, átlátható, „funkcionális” aszinkron kódot írni, vagy – ahogy régebben jellemeztem – azoknak, akik szeretnének LINQ kifejezést írni egy gomb Click eseményére.

A könyv ingyenes és csak online érhető el.
Letöltéshez klikk a linkre: devPortal