Library
From DmWiki
A library is a set of commonly used functions and classes that can be "plugged" into any project and taken full advantage of. Common code can mostly be compiled into library form. Then all you need to do is link in the library through your compiler (your compiler should have instructions on how to do that) and include any required header files (if dealing with C/C++), and then use it as if it's part of your project.
Libraries can be either statically or dynamically linked. With static linking the library code is actually embedded into your final executable file (EXE), so you do not need to distribute the library along with your application. With dynamic linking, the library code is stored in a separate file, named with a .DLL extension (Windows) or a .SO extension (Linux), so this file must be distributed with the application. An advantage of dynamic linking is that programs can choose at runtime whether or not to load a library, and if multiple programs use the same library they can save memory by using just one copy of it. On the other hand, dynamic linking is slightly slower, and your program will not work if any of its required DLLs/SOs are missing.
This article is a stub. You can help improve the article by expanding it.
