Functional Design : Principles, Patterns, and Practices
Functional Design : Principles, Patterns, and Practices
Click to enlarge
Author(s): Martin, Robert
ISBN No.: 9780138176396
Pages: 384
Year: 202309
Format: Trade Paper
Price: $ 68.99
Dispatch delay: Dispatched between 7 to 15 days
Status: Available

Foreword xiii Preface xv Acknowledgments xxi About the Author xxiii Part I: Functional Basics 1 Chapter 1: Immutability 3 What Is Functional Programming? 4 The Problem with Assignment 7 So Why Is It Called Functional? 10 No Change of State? 12 Immutability 15 Chapter 2: Persistent Data 17 On Cheating 19 Making Copies 20 Structural Sharing 23 Chapter 3: Recursion and Iteration 27 Iteration 28 Recursion 32 Chapter 4: Laziness 37 Lazy Accumulation 40 OK, but Why? 41 Coda 42 Chapter 5: Statefulness 43 When We MUST Mutate 47 Software Transactional Memory (STM) 48 Life Is Hard, Software Is Harder 51 Part II: Comparative Analysis 53 Chapter 6: Prime Factors 55 Java Version 56 Clojure Version 60 Conclusion 63 Chapter 7: Bowling Game 65 Java Version 66 Clojure Version 71 Conclusion 75 Chapter 8: Gossiping Bus Drivers 77 Java Solution 78 Clojure 88 Conclusion 93 Chapter 9: Object-Oriented Programming 95 Functional Payroll 98 Namespaces and Source Files 107 Conclusion 108 Chapter 10: Types 109 Part III: Functional Design 115 Chapter 11: Data Flow 117 Chapter 12: SOLID 125 The Single Responsibility Principle (SRP) 126 The Open-Closed Principle (OCP) 131 The Liskov Substitution Principle (LSP) 138 The Interface Segregation Principle (ISP) 147 The Dependency Inversion Principle (DIP) 152 Part IV: Functional Pragmatics 181 Chapter 13: Tests 183 But What about the REPL? 184 What about Mocks? 184 Property-Based Testing 186 A Diagnostic Technique 190 Functional 197 Chapter 14: GUI 199 Turtle-Graphics in Quil 200 Chapter 15: Concurrency 215 Conclusion 225 Part V: Design Patterns 227 Chapter 16: Design Patterns Review 229 Patterns in Functional Programming 233 Abstract Server 233 Adapter 236 Command 242 Composite 249 Decorator 260 Visitor 264 Abstract Factory 274 Conclusion 281 Postscript: OO Poison? 282 Part VI: Case Study 285 Chapter 17: Wa-Tor 287 Scratch That Itch 309 Showers Solve Problems 312 It's Time to Wildly Reproduce 322 What about the Sharks? 324 Conclusion 335 Afterword 337 Index 341.


To be able to view the table of contents for this publication then please subscribe by clicking the button below...
To be able to view the full description for this publication then please subscribe by clicking the button below...