Functional programming for Java developers

Software development today is embracing functional programming (FP), whether it's for writing concurrent programs or for managing Big Data. Where does that leave Java developers? This concise book offers a pragmatic, approachable introduction to FP for Java developers or anyone who uses an obje...

Descripción completa

Detalles Bibliográficos
Autor principal: Wampler, Dean (-)
Otros Autores: Loukides, Michael Kosta (illustrator), Wallace, Shawn, Romano, Robert (Illustrator), illustrator
Formato: Libro electrónico
Idioma:Inglés
Publicado: Sebastopol, CA : O'Reilly 2011.
Edición:First edition
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009628341206719
Tabla de Contenidos:
  • Table of Contents; Preface; Welcome to Functional Programming for Java Developers; Conventions Used in This Book; Using the Code Examples; Getting the Code Examples; Safari® Books Online; How to Contact Us; Acknowledgments; Chapter 1. Why Functional Programming?; I Have to Be Good at Writing Concurrent Programs; Most Programs Are Just Data Management Problems; Functional Programming Is More Modular; I Have to Work Faster and Faster; Functional Programming Is a Return to Simplicity; Chapter 2. What Is Functional Programming?; The Basic Principles of Functional Programming
  • Avoiding Mutable StateFunctions as First-Class Values; Lambdas and Closures; Higher-Order Functions; Side-Effect-Free Functions; Recursion; Lazy vs. Eager Evaluation; Declarative vs. Imperative Programming; Designing Types; What About Nulls?; Algebraic Data Types and Abstract Data Types; Exercises; Chapter 3. Data Structures and Algorithms; Lists; Maps; Combinator Functions: The Collection Power Tools; Persistent Data Structures; Some Final Thoughts on Data Structures and Algorithms; Exercises; Chapter 4. Functional Concurrency; The Actor Model; Software Transactional Memory; Exercises
  • Chapter 5. Better Object-Oriented ProgrammingImperative, Mutable Code; The Liskov Substitution Principle; More on Design Patterns; Pattern Matching; What Makes a Good Type?; Rethinking Object-Oriented Middleware; Exercises; Chapter 6. Where to Go From Here; Functional Tools for Java; A Recap; Exercises; Appendix. References; Glossary