Back-end/ETC

API vs LIbrary vs Framework

Ho's log 2021. 5. 7. 16:41

API(Application programming interface)

응용 프로그램에서 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스 

특징

구현과 독립적으로 사양만 정의되어있다

API에 따라 접근 권한이 필요할 수 있다

Java API, 여러 기업들의 오픈 API

 

Library

응용 프로그램 개발을 위해 필요한 기능(함수)을 모아 놓은 소프트웨어

특징

독립성을 가진다

응용 프로그램이 능동적으로 라이브러리를 사용한다.

Apache Commons, Guava, Lombok, jQuery

 

Framework

응용 프로그램이나 소프트웨어의 솔루션 개발을 수월하게 하기위해 제공된 소프트웨어 환경

특징

상호협력하는 클래스와 인터페이스의 집합

응용 프로그램이 수동적으로 프레임워크에 의해 사용된다

SpringFrameWork, Junit, Ruby on Rails

 

 

차이점 정리

Library와 API의 차이점 -> 구현 로직 유무

Library와 Framework의 차이점 -> 응용 프로그램의 흐름 주도권을 누가 가지고 있느냐

 

 

www.youtube.com/watch?v=We8JKbNQeLo&list=PLgXGHBqgT2TvpJ_p9L_yZKPifgdBOzdVH&index=88

 

'Back-end > ETC' 카테고리의 다른 글

Github 관리  (0) 2021.07.12
빌드 용어  (0) 2021.05.04
Web Server VS WAS  (0) 2021.05.03
함수형 프로그래밍  (0) 2021.04.28
Git Bracnches  (0) 2021.04.26