Description
Book SynopsisDiscover a new way of thinking about business applications in light of the massive industry shift toward cloud computing and reactive programming technologies. This book synthesizes technologies and techniques such as event sourcing, command query responsibility segregation (CQRS), property-based testing, and GraphQL into a cohesive guide for modern business applications that benefit every developer.
The book begins with a look at the fundamentals of modern business applications. These fundamentals include business rules and the managing of data over time. The benefits of reactive techniques are explained, including how they are fundamentally aligned with what application developers strive to achieve in their work.
Author Peter Royal equips you with sound guidance to follow as you evolve your existing systems, as well as examples of how to build those systems using modern techniques in Spring, Java, and PostgreSQL.
Table of Contents
Part I. On Business Applications1. What Is A Business Application?2. The Status Quo (and How It Can To Be)
Part II. Design Prerequisites 3. What Is A Reactive System?4. Why Build Business Applications as Reactive Systems?5. What Is A Business Rule?6. Managing Time
Part III. Design7. Constraints and Principles8. High-Level Data Flow9. Command Processor10. Command Generator11. Event Materializer12. Testing, Monitoring, and Observability13. Required Technologies
Part IV. Implementation14. Building with Modern Spring, Java, and PostgreSQL15. Expansion Points and Beyond