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 object-oriented language. Dean Wampler, Java expert and author of Programming Scala (O'Reilly), shows you how to apply FP principles such as immutability, avoidance of side-effects, and higher-order functions to your Java code. Each chapter provides exercises to help you practice what you've learned. Once…mehr
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 object-oriented language. Dean Wampler, Java expert and author of Programming Scala (O'Reilly), shows you how to apply FP principles such as immutability, avoidance of side-effects, and higher-order functions to your Java code. Each chapter provides exercises to help you practice what you've learned. Once you grasp the benefits of functional programming, you’ll discover that it improves all of the code you write. * Learn basic FP principles and apply them to object-oriented programming * Discover how FP is more concise and modular than OOP * Get useful FP lessons for your Java type design—such as avoiding nulls * Design data structures and algorithms using functional programming principles * Write concurrent programs using the Actor model and software transactional memory * Use functional libraries and frameworks for Java—and learn where to go next to deepen your functional programming skillsHinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Dean Wampler is a Principal Consultant at Think Big Analytics, where he specializes in "Big Data" problems and tools like Hadoop and Machine Learning. Besides Big Data, he specializes in Scala, the JVM ecosystem, JavaScript, Ruby, functional and object-oriented programming, and Agile methods. Dean is a frequent speaker at industry and academic conferences on these topics. He has a Ph.D. in Physics from the University of Washington.
Inhaltsangabe
Preface Welcome to Functional Programming for Java Developers Conventions Used in This Book Using the Code Examples Safari® Books Online How to Contact Us Acknowledgments Chapter 1: Why Functional Programming? 1.1 I Have to Be Good at Writing Concurrent Programs 1.2 Most Programs Are Just Data Management Problems 1.3 Functional Programming Is More Modular 1.4 I Have to Work Faster and Faster 1.5 Functional Programming Is a Return to Simplicity Chapter 2: What Is Functional Programming? 2.1 The Basic Principles of Functional Programming 2.2 Designing Types 2.3 Exercises Chapter 3: Data Structures and Algorithms 3.1 Lists 3.2 Maps 3.3 Combinator Functions: The Collection Power Tools 3.4 Persistent Data Structures 3.5 Some Final Thoughts on Data Structures and Algorithms 3.6 Exercises Chapter 4: Functional Concurrency 4.1 The Actor Model 4.2 Software Transactional Memory 4.3 Exercises Chapter 5: Better Object-Oriented Programming 5.1 Imperative, Mutable Code 5.2 The Liskov Substitution Principle 5.3 More on Design Patterns 5.4 What Makes a Good Type? 5.5 Rethinking Object-Oriented Middleware 5.6 Exercises Chapter 6: Where to Go From Here 6.1 Functional Tools for Java 6.2 A Recap 6.3 Exercises References Glossary Colophon
Preface Welcome to Functional Programming for Java Developers Conventions Used in This Book Using the Code Examples Safari® Books Online How to Contact Us Acknowledgments Chapter 1: Why Functional Programming? 1.1 I Have to Be Good at Writing Concurrent Programs 1.2 Most Programs Are Just Data Management Problems 1.3 Functional Programming Is More Modular 1.4 I Have to Work Faster and Faster 1.5 Functional Programming Is a Return to Simplicity Chapter 2: What Is Functional Programming? 2.1 The Basic Principles of Functional Programming 2.2 Designing Types 2.3 Exercises Chapter 3: Data Structures and Algorithms 3.1 Lists 3.2 Maps 3.3 Combinator Functions: The Collection Power Tools 3.4 Persistent Data Structures 3.5 Some Final Thoughts on Data Structures and Algorithms 3.6 Exercises Chapter 4: Functional Concurrency 4.1 The Actor Model 4.2 Software Transactional Memory 4.3 Exercises Chapter 5: Better Object-Oriented Programming 5.1 Imperative, Mutable Code 5.2 The Liskov Substitution Principle 5.3 More on Design Patterns 5.4 What Makes a Good Type? 5.5 Rethinking Object-Oriented Middleware 5.6 Exercises Chapter 6: Where to Go From Here 6.1 Functional Tools for Java 6.2 A Recap 6.3 Exercises References Glossary Colophon
Es gelten unsere Allgemeinen Geschäftsbedingungen: www.buecher.de/agb
Impressum
www.buecher.de ist ein Internetauftritt der buecher.de internetstores GmbH
Geschäftsführung: Monica Sawhney | Roland Kölbl | Günter Hilger
Sitz der Gesellschaft: Batheyer Straße 115 - 117, 58099 Hagen
Postanschrift: Bürgermeister-Wegele-Str. 12, 86167 Augsburg
Amtsgericht Hagen HRB 13257
Steuernummer: 321/5800/1497
USt-IdNr: DE450055826