badge icon

This article was automatically translated from the original Turkish version.

Article
libs.png

Kütüphane (Yazılım) (Yapay Zeka tarafından üretilmiştir)

Type
Software component
First use
1960s
Purpose
Code reusability and integration
Main Types
Static libraryDynamic library
Related Concepts
FrameworkAPIPackage managerOpen source software
Examples
TensorFlowOpenSSLSQLiteReact

Software libraries are collections of code segments, classes, or modules written to perform specific functions and made reusable. These libraries provide reusability in the software development process and can be easily integrated into different projects.

Historical Development

The origins of software libraries extend to the early days of computer science. In the 1960s and 1970s, developers began storing blocks of code that could be reused across different projects as separate files. This approach laid the foundation for reusable software components.


During the 1980s, with the widespread adoption of personal computers, libraries began to be distributed as standard packages alongside programming languages and operating systems. This era opened the way for the mass-scale use of software libraries.


From the 1990s onward, the proliferation of the internet enabled online sharing of libraries. With the rise of the open source movement, libraries became not only components of individual projects but also fundamental elements of global software ecosystems. Today, libraries reach millions of developers instantly through package managers and continue to exist as continuously updated universal resources.

Classification of Libraries

Static Libraries

Static libraries are incorporated into the executable file of an application during the compilation phase. As a result, all functions from the library are embedded directly into the application. This eliminates the need for an external library file on the system where the application runs. However, it leads to an increase in the size of the resulting file and requires the application to be recompiled whenever the library is updated.

Dynamic Libraries

Dynamic libraries are loaded into memory when the application is executed. This method allows multiple programs to use the same library simultaneously. The size of the executable file remains relatively small, and applications can benefit from updated library versions without needing to be recompiled. However, if the required library file is not accessible in the execution environment, the application cannot start.

Examples

  • Graphics Libraries: OpenGL, DirectX, SDL
  • Machine Learning Libraries: TensorFlow, PyTorch, Scikit-learn
  • Database Libraries: SQLite, SQLAlchemy
  • Web Development Libraries: React, Angular, jQuery
  • Cryptography Libraries: OpenSSL, BouncyCastle


These examples demonstrate that libraries are used not only at the system level but also in diverse fields such as artificial intelligence, security, data processing, and user interface development.

Author Information

Avatar
AuthorAttila MammadovDecember 1, 2025 at 8:56 AM

Tags

Discussions

No Discussion Added Yet

Start discussion for "Library (Software)" article

View Discussions

Contents

  • Historical Development

  • Classification of Libraries

    • Static Libraries

    • Dynamic Libraries

  • Examples

Ask to Küre