All the code we have developed up to this point centers on the code-first approach. This means that our database design is based on the needs we identify when we get our hands in the application design. As developers, we first consider the business side of an application and then we resolve to object-oriented patterns in order to build a software solution.
As discussed in Chapter 1, code-first approach is not the only available path developers can take. They can equally start from modeling the back end of the software solution they are designing (model-first) or, in the very real and common cases ...