API VS. Library VS. Framework

알파로그·2023년 3월 18일
0

Computer Science

목록 보기
11/17

✏️ API - Application Programing Interface

응용 프로그램에서 윤영 체제나 프로그래밍 언어가 제공하는 기능을

제어할 수 있게 만든 인터페이스

📍 API 의 특징

  • 구현과 독립적으로 사양만 정의되어 있다.
  • API 에 따라 접근 권한이 필요할 수 있다.
  • API 예시 : Java API , 여러 기업의 오픈 API

✏️ Library

응용 프로그램 (어플리케이션) 개발을 위해 필요한 기능 (함수, 메소드) 를 모아놓은 소프트 웨어

📍 Library 의 특징

  • 하나의 라이브러리는 다른 Library 를 의존하지 않는 독립성을 갖고있다.
  • 응용 프로그램이 능동적으로 Library 를 사용한다.
    • 응용 프로그램 (개발중인 어플리케이션) 에서 Library 가 필요할 때 호출해서 사용한다는 의미
  • Library 예시 : Apache Commons , Guava , Lombok , JQuery

✏️ Framework

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

📍 Framework 의 특징

  • 상호 협력하는 Class 와 Interface 의 집합이다.
  • 응용 프로그램이 수동적으로 Framework 에 의해 사용된다.
    • 클라이언트의 요청이 들어오면 Framework 가 번거로운 작업을 모두 대신해주고 핵심 Business 로지막만 응용 프로그램이 담당한다는 의미
  • Framework 예시 : Spring Framework, Junit, Ruby on Rails

✏️ 정리

📍 Librarty VS. API

  • 구현 로직의 유 무

📍 Library VS. Framework

  • 응용 프로그램의 흐름 주도권을 누가 가지고 있느냐의 차이
profile
잘못된 내용 PR 환영

0개의 댓글