Principles of module augmentation
As you saw in the previous chapter, we created specialized modules to do some specific tasks for us. However, as we move forward and develop our application further, we are going to require more functionality from our modules, and we will also require additional specialized modules.
When you are working on a large project, it is quite normal to have many developers working on various pieces of the application. It is also possible to have many developers work on the same part of the application together which requires a seamless approach for combining their efforts and the functionality that they add to the application.
Let's consider our GlobalData
module from the previous chapter as an example. This module was responsible for storing and caching application-level data. However, in its current state, it holds a very limited amount of application-level data. It is quite feasible to assume that when different developers are working on other pieces of...