Hodnocení:
Kniha poskytuje ucelený úvod do souběžnosti a paralelismu, zejména z pohledu moderních programovacích jazyků, jako jsou Clojure a Elixir. Je dobře strukturovaná a poutavá, takže složité koncepty jsou přístupné jak začátečníkům, tak zkušeným vývojářům. Čtenáři oceňují autorova jasná vysvětlení a praktické příklady, i když někteří poznamenávají, že zaměření na jazyk Clojure může omezit jeho použitelnost pro ty, kteří tento jazyk neznají.
Klady:⬤ Jasné a stručné vysvětlení konceptů a modelů souběžné komunikace.
⬤ Poutavý styl psaní zpříjemňuje čtení.
⬤ Užitečné pro začátečníky i zkušené vývojáře, nabízí nové poznatky a praktické aplikace.
⬤ Široká škála pokrytých témat, včetně moderních jazyků a technik.
⬤ Přehledné kapitoly, které umožňují postupné učení.
⬤ Velké zaměření na jazyk Clojure může odradit čtenáře, kteří tento jazyk neznají.
⬤ Někteří čtenáři zjistili, že struktura není vhodná pro skupinové studium nebo knižní kluby.
⬤ Problémy s formátováním Kindle znesnadňují čtení příkladů kódu.
⬤ Několik recenzentů mělo pocit, že obsah je buď zastaralý, nebo příliš závislý na jiných zdrojích.
⬤ Omezená hloubka konkrétních implementací souběhu, což může zanechat odborné čtenáře, kteří chtějí více.
(na základě 33 hodnocení čtenářů)
Seven Concurrency Models in Seven Weeks: When Threads Unravel
Váš software musí využívat více jader, zvládat tisíce uživatelů a terabajty dat a pokračovat v práci i při selhání hardwaru i softwaru. Klíčem k tomu je souběžnost a paralelismus a kniha Sedm modelů souběžnosti v sedmi týdnech vás na tento nový svět připraví. Podívejte se, jak nové technologie, jako jsou aktéři a funkcionální programování, řeší problémy s tradičním vývojem vláken a zámků. Naučte se využívat paralelismus grafického procesoru počítače a využívat clustery strojů pomocí MapReduce a Stream Processing. A to vše s jistotou, která plyne z používání nástrojů, které vám pomohou psát křišťálově čistý a kvalitní kód.
Tato kniha vám ukáže, jak využít různé paralelní architektury ke zlepšení výkonu, škálovatelnosti a odolnosti vašeho kódu. Seznámíte se se sedmi modely souběžnosti: vlákna a zámky, funkcionální programování, oddělení identity a stavu, aktéři, sekvenční procesy, datový paralelismus a architektura lambda.
Seznámíte se s nebezpečími tradičního programování s vlákny a zámky a dozvíte se, jak je překonat pomocí pečlivého návrhu a práce se standardní knihovnou. Podívejte se, jak aktéři umožňují softwaru běžícímu na geograficky distribuovaných počítačích spolupracovat, zvládat selhání a vytvářet systémy, které jsou v provozu 24 hodin denně, 7 dní v týdnu a 365 dní v týdnu. Pochopte, proč je sdílený proměnlivý stav nepřítelem robustního souběžného kódu, a zjistěte, jak vám ho funkcionální programování spolu s technologiemi, jako je softwarová transakční paměť (STM) a automatický paralelismus, pomůže zkrotit.
Dozvíte se o nevyužitém potenciálu, který se skrývá v každém GPU, a o tom, jak jej může software GPGPU uvolnit. Uvidíte, jak pomocí MapReduce využít masivní clustery k řešení dříve neřešitelných problémů a jak lze ve spolupráci se Stream Processingem zkrotit velká data.
Díky pochopení silných a slabých stránek jednotlivých modelů a hardwarových architektur budete mít možnost s jistotou řešit jakýkoli problém.
Co budete potřebovat:
Příkladový kód lze zkompilovat a spustit v systémech *nix, OS X nebo Windows. Pokyny ke stažení podpůrných sestavovacích systémů jsou uvedeny v každé kapitole.
© Book1 Group - všechna práva vyhrazena.
Obsah těchto stránek nesmí být kopírován ani použit, a to ani částečně ani úplně, bez písemného svolení vlastníka.
Poslední úprava: 2024.11.08 20:25 (GMT)