Advanced Web Application Architecture
This book is 55% complete
Last updated on 2020-05-29
About the Book
Web applications deserve to outlive the currently fashionable framework. Your application's core use cases deserve to be decoupled from their surrounding infrastructure. And all of your domain-specific code needs to be testable; it has to be tested after all.
This book helps you get your web applications back in shape. It contains many techniques for decoupling from infrastructure (like the framework, the database, or remote web services). In Part 1 we unlock a collection of design patterns which help you establish a clean separation between core and infrastructure code. Part 2 shows how these design patterns resonate at a higher level with architectural concepts like layers, ports and adapters (a.k.a. Hexagonal architecture). The book finishes with a discussion of testing strategies and design trade-offs.
What you'll learn
- Separating mixed code into core and infrastructure code by refactoring into patterns
- Dividing your code into layers, and making a clear distinction between an application's ports and adapters
- Suggestions for testing your decoupled application
Each chapter comes with exercises to test your understanding.
This is a book for experienced web developers. Code samples are written in PHP and are easy to follow by developers who write code in other OOP dialects, like C#, Java, etc.
There is an accompanying real-world project that showcases the design techniques and principles explained in this book. For a one-time fee you get access to this project, including any future updates. Subscribe at https://enjoy.gitstore.app/repositories/matthiasnoback/read-with-the-author.
With this package you get a copy of the book, including any of its future updates.
The Book: Team license
With this package you get 5 copies of the book, including any of its future updates.
The Book + Read with the author (limited availability)
With this package you get a copy of the book, including any of its future updates. You also get access to this book's "Read with the author" platform. There you can join a series of 6 video calls where you and other readers discuss chapters from the book with the author. The sessions will be held every 3 weeks on different week days at 20:00 Central European Summer Time (CEST). Note: A new round of sessions starts in September 2020. If you'd like to learn more, email me at email@example.com N.B. When you've bought this package go to your "Library". on Leanpub (https://leanpub.com/user_dashboard/library), select this book and click on "Download Extras". The downloaded ZIP file contains a PDF with instructions.
Your ticket to the "Read with the author" platform for this book.
The Book: Enterprise license
With this package you get 10 copies of the book, including any of its future updates.
- Who is this book for?
- Overview of the contents
- About the author
- I Decoupling from infrastructure
- The domain model
- Read models and view models
- Use cases
- Service locators
- External services
- Time and randomness
- II Organizing principles
- Key design patterns
- Architectural layers
- Ports and adapters
- Process modelling
- III Conclusion
- A testing strategy for decoupled applications
- Context is everything
The Leanpub 45-day 100% Happiness Guarantee
Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
See full terms
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets) and MOBI (for Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.