Create various design patterns to master the art of solving problems using Java 9About This BookThis book demonstrates the shift from OOP to functional programming and covers reactive and functional patterns in a clear and step-by-step mannerAll the design patterns come with a practical use case as part of the explanation, which will improve your productivityThis book is based on the latest version of Java 9 and fully explores the power of reactive programmingWho This Book Is ForThis book is for those who are familiar with Java development and want to be in the driver's seat when it comes to modern development techniques. Basic OOP Java programming experience and elementary familiarity with Java is expected.What you will learnUnderstand the OOP and FP paradigmsExplore the traditional Java design patternsGet to know the new functional features of JavaSee how design patterns are changed and affected by the new featuresDiscover what reactive programming is and why is it the natural augmentation of FPWork with reactive design patterns and find the best ways to solve common problems using themSee the latest trends in architecture and the shift from MVC to serverless applicationsUse best practices when working with the new featuresIn DetailHaving knowledge of design patterns enables you as a developer to improve your code base, promote code reuse, and make the architecture more robust. As languages evolve, new features take time to fully understand before they are adopted en masse. The mission of this book is to ease the adoption of the latest trends and provide good practices for programmers.We focus on showing you the practical aspects of smarter coding in Java 9. We'll start off by going over object-oriented (OOP) and functional programming (FP) paradigms, moving on to describe the most used design patterns in their classical format and explain how Java's functional programming features are changing them.You will learn to enhance implementations by mixing OOP and FP, and finally get to know about the reactive programming model, where FP and OOP are used in synergy towards the goal of writing better code. Gradually, the book will show you the latest trends in architecture moving from MVC to microservices and server-less architecture. We will finish off by highlighting the new Java 9 features and best practices.By the end of the book, you will be able to efficiently address common problems faced while developing applications and be comfortable working on scalable and maintainable projects of any size.