1.4. Third-Party Components

In addition to features provided by base class libraries and operating systems, there's a third category of code you don't have to write. That is third-party components provided by ISVs (independent software vendors) — which basically means everyone except us and the operating system vendors. There are a number of types of third-party components, ranging from small things like networking libraries and sets of UI components, all the way up to very expensive and complex applications such as messaging systems like IBM's MQ series.

The reason to choose any of those third-party solutions is that they represent work you don't have to do. That has to be balanced against the risk associated with not being in control, although there are often ways to mitigate that risk. Many component vendors will provide you with source code at an additional cost, which is a great way to lessen risk. If you have the source code, it is easier to diagnose and possibly fix any problems that may come up, or to add new features that are specific to your application. Other vendors, particularly smaller ones, are happy to make changes to accommodate your needs in exchange for a commitment to purchase X units, and so on.

Evaluating third-party components can be tricky. Every vendor will tell you that its product will solve all of your problems, so the only way to know for sure is to try it out. Purchasing a third-party component based solely on the demos given by technical salespeople ...

Get Code Leader: Using People, Tools, and Processes to Build Successful Software now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.