There's more...

While dependencies provide a mechanism for directly extending or using other applications, they do come with some challenges that you need to be aware of.

Since the version number is part of the dependency entry, any time that the version number of the dependent application changes, you must update all the applications that have the dependency in order to reference the new version. This could prove to be cumbersome if you create a lot of dependencies between your applications.

Also, consider dependencies from a software release standpoint. If you're creating a collection of parent applications that all reference a common child application, then any time that you update the library application, you will need to update all the applications that reference it, regardless of whether you changed those applications or not. I'm not saying this is a bad model, but be careful what you put into the child application, because you don't want to be constantly updating all your applications because of frequent changes to the dependencies.

The following example illustrates a rather complex scenario where multiple applications have multiple dependencies. Technically speaking, it all works fine, but as I said, managing dependencies like this will prove to be quite challenging:

Looking at the preceding example, consider the following scenarios:

  • An update to App A means that App 1 and App 2 need to also be updated.
  • An update to App B means an update to App 3 is required, which in turn means an update to App 2 is required.

As you can see, if you're not careful, you can get yourself into a spiderweb of dependencies, so take care in how you architect your dependent applications.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.227.13.51