Grokking Simplicity
Autor Eric Normanden Limba Engleză Paperback – 18 mai 2021
Prin parcurgerea Grokking Simplicity, cititorul va reuși să refactorizeze sisteme complexe în componente ușor de testat, transformând „acțiunile” care modifică starea sistemului în „calcule” pure, lipsite de efecte secundare. Ne-a atras atenția modul în care Eric Normand demistifică programarea funcțională, eliminând barierele teoretice abstracte în favoarea unor soluții pragmatice pentru problemele de zi cu zi ale dezvoltatorilor software. Subliniem structura tehnică a volumului, care este împărțită în două segmente critice: gestionarea datelor imuabile și stăpânirea abstracțiilor de prim rang. Autorul pune un accent deosebit pe modelarea timpului, oferind scheme clare pentru izolarea și coordonarea liniilor temporale în codul asincron, o sursă frecventă de bug-uri dificil de detectat. Dacă Understanding Software de Max Kanat-Alexander v-a oferit cadrul teoretic despre importanța simplității în designul software, această carte oferă instrumentele practice și pașii concreți de implementare pentru a atinge acel obiectiv. Spre deosebire de alte manuale care se concentrează pe sintaxa unui anumit limbaj, Grokking Simplicity se concentrează pe arhitectură. De la designul stratificat la arhitecturi reactive, textul ghidează dezvoltatorul prin procesul de reducere a complexității inerente a software-ului modern distribuit. Abordarea este una vizuală, susținută de numeroase ilustrații și exerciții care facilitează tranziția de la programarea imperativă la cea funcțională, fără a necesita cunoștințe de calcul lambda sau teorie a categoriilor.
Preț: 283.06 lei
Preț vechi: 353.82 lei
-20%
Carte disponibilă
Livrare economică 04-18 mai
Livrare express 17-23 aprilie pentru 117.27 lei
Specificații
ISBN-10: 1617296201
Pagini: 550
Ilustrații: Illustrations, unspecified
Dimensiuni: 186 x 234 x 29 mm
Greutate: 0.99 kg
Editura: Manning Publications
De ce să citești această carte
Recomandăm această carte dezvoltatorilor de nivel intermediar și avansat care doresc să reducă datoria tehnică și să scrie cod mai robust. Veți câștiga o metodologie clară de a separa logica de business de efectele secundare, rezultând într-o bază de cod mai ușor de întreținut. Este un instrument esențial pentru oricine lucrează cu sisteme asincrone sau multithreaded și caută o cale practică spre simplitate.
Despre autor
Eric Normand este un expert în dezvoltare software și un educator influent în domeniul programării funcționale, activând ca mentor și profesor din anul 2007. Este recunoscut pentru capacitatea sa de a traduce concepte matematice complexe în tehnici aplicabile direct în producție. Expertiza sa se concentrează pe utilizarea paradigmelor funcționale pentru a îmbunătăți claritatea și fiabilitatea sistemelor software de mari dimensiuni, fiind o voce respectată în comunitatea dezvoltatorilor care promovează designul software simplificat.
Descriere scurtă
Distributed across servers, difficult to test, and resistant to modification--modern software is complex. Grokking Simplicity is a friendly, practical guide that will change the way you approach software design and development. It introduces a unique approach to functional programming that explains why certain features of software are prone to complexity, and teaches you the functional techniques you can use to simplify these systems so that they're easier to test and debug. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology
Developers rightly fear the unintended complexity that infects most code. This book shows you how to write software that keeps complexity close to its inherent minimum. As you write software you should distinguish between code that alters your system's state, and code that does not. Once you learn to make that distinction, you can refactor much of your state-altering "actions" into stateless "calculations." Your software will be simpler. About the book
The book also teaches you to solve the complex timing bugs that inevitably creep into asynchronous and multithreaded code. In advanced sections of the book you learn how composable abstractions help avoid repeating code and open up new levels of expressivity. What's inside
Patterns for simpler code
Powerful time modeling approaches to simplify asynchronous code
How higher-order functions can make code reusable and composable About the reader
For intermediate and advanced developers building complex software. Exercises, illustrations, self-assessments, and hands-on examples lock in each new idea. About the author
Eric Normand is an expert software developer who has been an influential teacher of functional programming since 2007. Table of Contents
1 Welcome to Grokking Simplicity
2 Functional thinking in action
PART 1 - ACTIONS, CALCULATIONS, AND DATA
3 Distinguishing actions, calculations, and data
4 Extracting calculations from actions
5 Improving the design of actions
6 Staying immutable in a mutable language
7 Staying immutable with untrusted code
8 Stratified design, part 1
9 Stratified design, part 2
PART 2 - FIRST-CLASS ABSTRACTIONS
10 First-class functions, part 1
11 First-class functions, part 2
12 Functional iteration
13 Chaining functional tools
14 Functional tools for nested data
15 Isolating timelines
16 Sharing resources between timelines
17 Coordinating timelines
18 Reactive and onion architectures
19 The functional journey ahead