Chapter 3. Deconstructing Play application architecture
This chapter covers
Learning the key concepts of a Play application’s architecture
Understanding the relationships between Play application components
Configuring a Play application and its HTTP interface
Play’s model-view-controller and asynchronous process APIs
Modularizing a Play application
This chapter explains Play at an architectural level. We’ll be covering the main parts of a Play application in this chapter, and you’ll learn which components make up a Play application and how they work together. This will help you gain a broad understanding of how to use Play to build a web application, without going into detail at the code level. This will also allow you to learn which concepts and terms Play uses, so you can recognize its similarities to other web frameworks and discover the differences.
3.1. Drawing the architectural big picture
Play’s API and architecture are based on HTTP and the model-view-controller (MVC) architectural pattern. These are familiar to many web developers, but if we’re being honest, no one remembers how all of the concepts fit together without looking them up. That’s why this section starts with a recap of the main ideas and terms.
3.2. Application configuration—enabling features and changing defaults
3.3. The model—adding data structures and business logic
3.4. Controllers—handling HTTP requests and responses
3.5. View templates—formatting output
3.6. Static and compiled assets
3.7. Jobs—starting processes
3.8. Modules—structuring your application
3.9. Summary