App Architecture
Author | : Chris Eidhof |
Publisher | : Createspace Independent Publishing Platform |
Total Pages | : 230 |
Release | : 2018-05-13 |
ISBN-10 | : 1719030251 |
ISBN-13 | : 9781719030250 |
Rating | : 4/5 (51 Downloads) |
Book excerpt: This book explains a range of application design patterns and their implementation techniques using a single example app, fully implemented in five design patterns. Instead of advocating for any particular pattern, we lay out the problems all architectures are trying to address: constructing the app's components, communicating between the view and the model, and handling non-model state. We show high-level solutions to these problems and break them down to the level of implementation for five different design patterns - two commonly used and three more experimental.The common architectures are Model-View-Controller and Model-View-ViewModel + Coordinator. In addition to explaining these patterns conceptually and on the implementation level, we discuss solutions to commonly encountered problems, like massive view controllers. On the experimental side we explain View-State-Driven Model-View-Controller, ModelAdapter-ViewBinder, and The Elm Architecture. By examining these experimental patterns, we extract valuable lessons that can be applied to other patterns and to existing code bases.