A software library is a collection of pre-written, reusable code that provides specific functionality for developers. Libraries simplify programming tasks by offering modules or functions for common operations, such as handling data, managing files, or creating user interfaces. Unlike frameworks, libraries are less prescriptive, allowing developers to call and integrate them as needed without imposing strict design patterns.
A software library is a collection of pre-written, reusable code that provides specific functionality for developers. Libraries simplify programming tasks by offering modules or functions for common operations, such as handling data, managing files, or creating user interfaces. Unlike frameworks, libraries are less prescriptive, allowing developers to call and integrate them as needed without imposing strict design patterns.
+
===== Framework =====
===== Framework =====
A framework is a structured platform or foundation for developing applications, offering pre-written code, tools, and guidelines to streamline the process. It provides a standardized way to build and deploy software, saving time and ensuring consistency. Frameworks support specific languages or domains, such as web development (Django, Angular) or data analysis (TensorFlow), enabling efficient and organized coding practices.
A framework is a structured platform or foundation for developing applications, offering pre-written code, tools, and guidelines to streamline the process. It provides a standardized way to build and deploy software, saving time and ensuring consistency. Frameworks support specific languages or domains, such as web development (Django, Angular) or data analysis (TensorFlow), enabling efficient and organized coding practices.
+
{{ :en:modul:m291:learningunits:lu04:theorie:was_ist_ein_framework_in_der_programmierung.mp4 | Was ist ein Framework in der Programmierung? }}
Libraries and frameworks are tools that simplify software development by providing pre-written code. Libraries offer reusable functions for specific tasks, giving developers control over when and how to use them. Frameworks, on the other hand, define a structured architecture, requiring developers to work within their rules. The "who-calls-who" distinction highlights that in libraries, the developer calls the library, while in frameworks, the framework calls the developer’s code.
Libraries and frameworks are tools that simplify software development by providing pre-written code. Libraries offer reusable functions for specific tasks, giving developers control over when and how to use them. Frameworks, on the other hand, define a structured architecture, requiring developers to work within their rules. The "who-calls-who" distinction highlights that in libraries, the developer calls the library, while in frameworks, the framework calls the developer’s code.
+
===== Who-Calls-Who Principle =====
+
There is also another aspect, which claims to explain the difference between frameworks and libraries: The Who-Calls-Who-principle.
The "who-calls-who" principle is a key distinction between libraries and frameworks, focusing on the flow of control:
+
+
1. **Library**: In a library, **you are in control**. Your code explicitly calls the library's functions or methods when needed, and the control is then returned to your code.
+
+
2. **Framework**: In a framework, **it is in control**. The framework defines the overall structure, and it calls your code at specific points, such as predefined methods or callbacks, following its architectural rules.
+
+
This distinction highlights the differing roles and levels of control in using libraries versus frameworks.
===== Frameworks vs. Library =====
===== Frameworks vs. Library =====
-
^Library ^Framewor ^
+
^Library ^Framework ^
| Library is a set of reusable functions used by computer programs. | Framework is a piece of code that dictates the architecture of your project and aids in programs. |
| Library is a set of reusable functions used by computer programs. | Framework is a piece of code that dictates the architecture of your project and aids in programs. |
| You are in full control when you call a method from a library, and the control is then returned. | The code never calls into a framework; instead, the framework calls you. |
| You are in full control when you call a method from a library, and the control is then returned. | The code never calls into a framework; instead, the framework calls you. |
Zeile 35:
Zeile 51:
You will find a list with JavaScript-Libraries und Frameworks including an explaination and a rathing as follows: [[https://www.ionos.de/digitalguide/websites/web-entwicklung/beliebte-javascript-frameworks-und-bibliotheken/ | here ]].
You will find a list with JavaScript-Libraries und Frameworks including an explaination and a rathing as follows: [[https://www.ionos.de/digitalguide/websites/web-entwicklung/beliebte-javascript-frameworks-und-bibliotheken/ | here ]].
+
----
+
[[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Volkan Demir