Most non-developers probably think that creating applications means building either software for your PC or Mac, games, or web pages, because that is what they can see and use. But once you join the developers' community, either by your own or professionally, you will eventually realize how much work is done for applications and tools that do not have a user interface.
Have you ever wondered how someone's website can access your Facebook profile, and later on, post an automatic message on your wall? Or how websites manage to send/receive information in order to update the content of the page, without refreshing or submitting any form? All of these features, and many more interesting ones, are possible thanks to the integration of applications working "behind the scenes". Knowing how to use them will open the doors for creating more interesting and useful web applications.
In this chapter, you will learn the following:
API stands for Application Program Interface. Its goal is to provide an interface so that other programs can send commands that will trigger some process inside the application, possibly returning some output. The concept might seem a bit abstract, but in fact, there are APIs virtually in everything which is somehow related to computers. Let's see some real life examples:
As you can see, there are different places where APIs are useful. In general, when you have a system that should be accessed externally, you need to provide potential users an API. When we say externally, we mean from another application or library, but it can very well be inside the same machine.