As AeroGear.js gets larger and more complex, it makes sense to
revisit our build strategy as well as our dependency management
strategy since that affects the build.
I was thinking, and after discussing with Luke I believe he
agrees, that we should investigate the use of AMD (Asynchronous
Module Definition). What this provides for us is:
- Better modularization between the pieces of code in
AeroGear.js
- Better dependency management by specifically defining
those dependencies in each module
- A better base for our custom build process
I think all of those reasons point to the need for this
implementation. That being said, it doesn't come without a cost.
We would need to reorganize the repo and modify each file to
make it a proper AMD module. This will take time but I think it
is time well spent.
I would be glad to hear if anyone has any thoughts or
concerns around this.