1) 라이브러리(Library)
- 특정 기능에 대한 도구 또는 함수들의 집합
- 프로그램 기능 수행을 위해 활용 가능한 도구의 집합
- 개발자가 만든 클래스에서 호출하여 사용함
- Python pip로 설치한 패키지/모듈 (tensorflow, pandas, beautifulsoup 등등)
- C++의 표준 템플릿 라이브러리 (STL)
- Node.js에서 npm으로 설치한 모듈
- HTML의 클라이언트 사이드 조작을 단순화하는 JQuery
- 웹에서 사용자 인터페이스 개발에 사용되는 React.js
2) 프레임워크(Framework)
- 뼈대, 기반구조
- 소프트웨어의 특정 문제를 해결하기 위해 상호 협력하는 클래스와 인터페이스의 집합
- 완성된 제품 X
- 완성된 제품을 만들기 위해 개발자를 도와주거나 기반이 되는 역할
- Java 서버 개발에 사용되는 Spring
- Python 서버 개발에 사용되는 Django, Flask
- 안드로이드 앱 개발에 사용되는 Android
- 아이폰 앱 개발에 사용되는 Cocoa Touch
- 웹 개발에 사용되는 Angular, Vue.js 등
- 자바 기반의 JSP를 위한 프레임 워크 Struts
- 루비로 작성된 MVC패턴을 이용하는 Ruby on Rails
3) 라이브러리와 프레임워크의 차이점
- 제어의 주체(제어의 흐름을 쥐고 있는 것)는 누구인가?
- 라이브러리 : 개발자, 코드에서 라이브러리 함수를 호출함
- 프레임워크 : 프레임워크, 프레임워크에서 개발자의 코드를 호출함 (제어의 역전)
'Web & Android > SpringBoot' 카테고리의 다른 글
[SpringBoot] Spring Boot (0) | 2023.08.12 |
---|---|
[SpringBoot] Spring (0) | 2023.08.12 |
[SpringBoot] Mock 테스트 (0) | 2023.07.28 |
[SpringBoot] JUnit 테스트 (0) | 2023.07.27 |
[Spring] pom.xml 변경 후 업데이트 (0) | 2022.09.24 |