Programming in Real World
Program is set of small instruction. It's very simple, right? But as you learn, what looks like one single instruction could actually be a thousand. And that what get us from simple 'Hello World' to more complex code. In the real world, people can make a complex function based on more simple function. That's what we will do. There are so much simple function that provided to us so we can just use it to make our complex function. For example :
Each of these functions is simple but used by many program. And this kind of generic code is collected together and we call it Library. Library is collection of pre-written functionality intended to be shared and used by other program.
There are two types of library. First one is more generic one like date, math, or input/output function. But some library more specific and specialized, not everybody need it, the example is Audio, 2D Graphic, or Encryption. The generic one is sometimes called standard library, you use it every time you write code, more like part of the language. But the specialized one is optional, you can choose to use it.
There are two more things we will learn related to this theme, SDK and API.
SDK
SDK or Software Development Kit is a bundle of different programs and tools that developer might need during the entire process of writing, debugging, testing, developing, and releasing code. These days, SDK might include something like emulator to test a phone application using your desktop or laptop. SDK will include relevant library on that paltform.
API
API, stands for Application Programming Interface, is a set of routines, protocols, and tools for building software applications. An API specifies how software components should interact. Additionally, APIs are used when programming graphical user interface (GUI) components. A good API makes it easier to develop a program by providing all the building blocks. A programmer then puts the blocks together.