JAMONGPROJECT

API / 라이브러리 / 프레임워크 본문

Frontend/JAVASCRIPT

API / 라이브러리 / 프레임워크

JAMONGPROJECT 2022. 4. 24. 19:47

* 본 글은 본인의 주관하에 쓴 글이므로 정확한 정보 전달이 어려울 수 있습니다.

모호한 개념의 이해를 돕기 위해 쓴 글이니 필요한 부분만 참고해주시길 바랍니다.

 

API(Application Programming Interface)란?

 

직역하면 응용 프로그래밍 인터페이스

 

컴퓨터 프로그램은 응용 프로그램시스템 프로그램으로 나뉘는데

 

시스템 프로그램 : 운영체제(OS)

응용 프로그램 : 시스템 프로그램을 제외한 모든 프로그램

 

이라고 가볍게 이해하자.

 

즉, API는 응용 프로그램을 만들 때 사용하는 인터페이스라고 정의할 수 있다.

 

그렇다면 인터페이스는 무엇일까?

 

인터페이스란 쉽게 말해 도우미 역할이라고 생각하면 된다.

 

정리하자면 API는 응용 프로그램을 만들기 편리하게 해주는 도우미라고 할 수 있다.

 

현업 웹 개발에서 쓰이는 뉘앙스로는 

 

백엔드에서 프론트엔드로 데이터를 전달할 때 필요한 도구라고 생각하면 좋을 것 같다.

 

 

라이브러리(Library)란?

 

라이브러리는 고정된 기능을 수행하기 위해 이미 만들어진 코드 집합이라고 이해하면 쉽다.

 

대중적으로 많이 쓰는 기능, 예를 들어 캐러셀이나 로그인 메뉴 같은 기능도 라이브러리로 구현이 된다.

 

쉽게 말해 완제품같은 개념이다.

 

이미 만들어진 완제품을 사용하면 그 물건이 의도한 기능을 쉽게 수행할 수 있다.

 

그래서 API와 라이브러리는 비슷한 개념이고

 

API 속에 라이브러리가 존재할 수도 있다.

 

응용 프로그램을 만들기 위해서 라이브러리를 사용하면 좀 더 편리하다.

 

그렇다면 응용 프로그램을 만들기 편리하게 해주는 도우미 역할을 해준다고도 표현할 수 있다.

 

그래서 두 개념을 많이 헷갈려하는데

 

API는 기능을 만들기 쉽게 도와주는 도우미

 

라이브러리는 실제로 기능을 구현하는 도구

 

라고 생각하면 될 것 같다.

 

 

프레임워크(Framework)란?

 

API, 라이브러리 개념보다는 구분하기 쉬운데

 

일종의 환경이라고 생각하면 된다.

 

안드로이드 프레임워크안에서는 안드로이드 앱을 만들 수 있지만

 

IOS 앱을 만들 수 없을 것이다.

 

 

출처 : 내 머릿속 / 실제 개념과 다를 수 있음.

'Frontend > JAVASCRIPT' 카테고리의 다른 글

Falsy / Truthy  (0) 2022.05.06
삼항 조건 연산자(conditional ternary operator) (aka. if문 축약)  (0) 2022.05.06
IndexedDB  (0) 2022.04.27
동기 / 비동기  (0) 2022.04.26
객체 / 프로퍼티 / 메서드 / 클래스  (0) 2022.04.24
Comments