안녕하세요!
오늘 부터 유투브 우아한Tech에서 10분 테크톡에 있는 내용들을 정리하고자 합니다.
출처: 우아한Tech
정의
응용 프로그램에서 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스
쉽게 얘기하면 프로그램 간 사이에 연결시켜 주는 다리 같은 역할
API의 특징
다른 서버로 부터 손쉽게 데이터를 가져올 수 있는 수단이다.
오직 데이터만 기지고 온다.
API를 제공하는 웹사이트를 통해 데이터를 얻을 수가 있는데, 우리가 가져올 것은 데이터 뿐이다. 디자인이나 다른 것은 필요하지 않다.
그러니까 이런 API는 특정 웹사이트로부터 데이터를 얻거나 컴퓨터(machines)끼리 소통하기 위해 고안된것이다.
그게 우리가 API에 아무디자인이 필요없는 이유이다.
출처: 노마드코더
정의
응용 프로그램 개발을 위해 필요한 기능(함수)을 모아 놓은 소프트웨어
Library 특징
정의
응용 프로그램이나 소프트웨어의 솔루션 개발을 수월하게 하기 위해 제공된 소프트웨어 환경. 개발자는 이런 틀 위에서 자기가 원하는 코드를 작성하면 된다.
프레임워크 O
level 2: Spring 프레임워크 기반으로 웹 애플리케이션을 개발하는 과정
프레임워크 X
level 3: Java를 이용해 웹 서버, 프레임워크를 개발하는 과정
프레임워크가 없을때 해야 할 일이 많다.
Library와 API의 차이점은 구현 로직의 유무이다.
Library와 Framework의 차이점은 응용 프로그램의 흐름 주도권을 누가 가지고 있느냐 이다.