Veze, linkovi
Kompjuter biblioteka
Korpa
Grokking Simplicity, Taming complex software with functional thinking

Programiranje Programiranje

Grokking Simplicity, Taming complex software with functional thinking

Autor: Eric Normand
Broj strana: 592
ISBN broj: 9781617296208
Izdavač: MANNING PUBLICATIONS MANNING PUBLICATIONS
Godina izdanja: 2021.

Pregleda (30 dana / ukupno): 98 / 157

                 
Twitter   Facebook   Linkedin   Pinterest   Email
                 
Predlog za prevod

 

Grokking Simplicity is a friendly, practical guide that will change the way you approach software design and development.

Summary
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 ad­vanced 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

"This book is a must-read for taming complex software. One of the most engaging titles in years." Michael Aydinbas, EXXETAAG

"The most insightful and intuitive guide to clean and simple software. I recommend this to all software developers." Rob Pacheco, Vision Government Solutions

"A great resource for learning functional thinking and the practical programming tech­niques derived from it. I can recommend to my colleagues with confidence." Joel Luukka, Geniem

"An indispensable guide to identifying and conquering complexity." Bryan Miller, Petrolitix

 

Komentari

• Danon Bojan
Djeluje kao zanimljiva knjiga, ima i odlične ocjene čitalaca

Ostavite komentar Ostavite komentar

 

Preporučujemo

Naučite programiranje

Naučite programiranje

Rešeni zadaci iz programskog jezika C

Rešeni zadaci iz programskog jezika C

Veze, linkovi
Linkedin Twitter Facebook
 
     
 
© Sva prava pridržana, Kompjuter biblioteka, Beograd, Obalskih radnika 4a, Telefon: +381 11 252 0 272