Understanding Integration

Two foundation concepts before we start: clients and servers. You've probably at least heard those terms. It's another one of these things that sounds complicated, but it isn't. A client makes a request and a server responds. The most ubiquitous example is your web browser (Internet Explorer, Firefox, and so on) bringing up a web page. When you type “cnn.com” into your web browser, your browser acts as a client and sends a request to the cnn.com server. The server responds with a series of content files that your browser renders on your screen, allowing you to read the news. We're covering this concept because

when we review the high-level architecture, we're describing the way in which a set of components connect to each other. As part of that description, you should know which component is acting as a client versus a server.

Figure 4.2 Clients and Servers

4.1

Functional blocks in an architecture will generally connect to each other in one of three ways:

1. Code integration
2. Add-in (plug-in) integration
3. Arm's length integration through an application program interface (API)1

Code-level integration means you're taking a software module from someone else and including it directly in your application. This usually means the code you're using is written in the same programming language as your own. For example, I was recently working with my team on ...

Get Starting a Tech Business: A Practical Guide for Anyone Creating or Designing Applications or 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.