Introducing architecture styles
Architecture styles are high-level design choices that influence the way applications are designed, built, and hosted. Making such a choice forces you to obey the standard practices that ship with the style in question. Some architecture styles act at a higher level than others.
For example, the three-tier architecture is based on three different layers – presentation, business, and data – all of which are physically separated. In a three-tier architecture, the presentation layer cannot talk directly to the data layer. Network policies should be enforced to prevent such occurrences. As you can see, this type of architecture has an impact, not only on the hosting piece but also on the way you organize the development of the different components. Conversely, the Model View Controller (MVC) pattern is also based on three layers, but all the layers can be deployed to a single server. Here, the physical split is not required. However, going...