In this chapter, we learned the concepts of Modules and Namespaces and also the benefits that come from their adoption in large applications. We had an in-depth analysis of the most widely adopted patterns and compared their benefits and limitations. We learned by example how to develop Modules using the Object Literal Pattern, the variants of the Module Pattern, and the Revealing Module Pattern.
We continued with a small introduction to ES5's Strict Mode and saw how it can benefit today's Modules. Then we proceeded by learning some details about the standardized but not yet widely supported ES6 Modules. Lastly, we saw how the architecture of the dashboard application can change dramatically after using the Module Pattern in its implementation.
Now that we have completed our introduction on how to use Modules and Namespaces, we can move on to the next chapter where we will be introduced to the facade pattern. In the next chapter, we will learn about the philosophy of facades and the...