프레임워크는 개발에 필요한 구조와 규칙을 정의해 제어를 역전시켜 개발자는 프레임워크에 따라 동작하는 코드를 작성합니다. 반면, 라이브러리는 개발자가 필요에 따라 호출하여 사용하며, 제어는 개발자에게 남아 있습니다.
1. 프레임워크 (Framework)
- 프레임워크는 애플리케이션의 구조를 제어하기 위한 미리 정의된 규칙과 구조를 제공하는 도구 모음입니다.
- 개발자는 프레임워크가 정의한 규칙을 따라 코드를 작성하고, 프레임워크가 제공하는 기능을 활용하여 개발합니다.
- 일반적으로 프레임워크는 제어 역전(Inversion of Control)이라는 개념을 사용하여 개발자가 아닌 프레임워크가 애플리케이션의 흐름을 제어합니다.
예시) express, nest , spring , Django 등
2. 라이브러리 (Library):
- 라이브러리는 재사용 가능한 코드의 집합으로, 개발자가 필요한 기능을 수행하기 위해 호출할 수 있는 도구들의 집합입니다.
- 라이브러리를 사용하는 개발자는 필요한 부분에서 라이브러리의 함수나 클래스를 직접 호출하여 사용합니다.
- 라이브러리는 주로 특정 작업을 수행하는 함수나 클래스를 제공하며, 개발자가 라이브러리를 어떻게 사용할지에 대한 제어권을 가지고 있습니다.
예시) jQuery , passport , socket.io 등
'cs 공부' 카테고리의 다른 글
| TDD (0) | 2023.12.18 |
|---|---|
| DDD (Domain-Driven Design) (1) | 2023.12.18 |
| 동기와 비동기의 차이 (0) | 2023.12.18 |
| OSI 7계층 (0) | 2023.12.15 |
| 객체 지향 프로그래밍이란 무엇이고 어떻게 활용할 수 있나요? (0) | 2023.12.12 |