📖 책 도서

IT도서 : 비전공자를 위한 이해할 수 있는 IT지식 - [4장] API 와 JSON / [5장] 애플리케이션

핑크빛연어 2022. 2. 27. 18:35

 

4장] API 와 JSON

 

 

🚨 API

• 요청을 구분할 수 있도록 하는 체계
• 클라이언트, 서버와 같은 서로 다른 프로그램에서 요청과 응답을 주고 받을 수 있게 만든 체계
• 클라이언트 컴퓨터에서 요청을 보내고 서버 컴퓨터에서 요청을 받아서 응답을 준다
• 서버는 주소에 따라 요청의 종류를 정해놓아야 한다
• API 는 서버 개발자가 개발하고, 클라이언트 개발자는 그 API 를 사용한다
• API 를 통해 요청과 응답을 주고 받을 때는 데이터도 같이 담긴다
ex) 서버주소/A 의 형태로 요청이 오면 로그인 기능을 수행하고 응답
ex) 서버주소/B 의 형태로 신호를 보내면 서버가 회원 가입 기능을 수행하고 응답

 

API 의 4가지 요청 요소 : CRUD

• C(Create) : 생성 요청(사진을 올리는 요청)
 R(Read) : 읽기 요청(사진을 불러오는 요청)
• U(Update) : 변경 요청(사진을 바꾸는 요청)
• D(Delete) : 삭제 요청(사진을 지우는 요청)

 

 

🚨 RESTful API

  - CRUD 요청은 각각의 주소를 가져서 CRUD 별로 주소가 생기면 주소가 너무 많아지고 관리가 힘들어져 문제 발생
   => 이를 보완하고자 RESTful API 라는 체계를 만들어서 사용
• CRUD 를 하나의 주소로 관리
• 요청을 보낼 때 어떤 요청을 보냈는지 파악할 수 있게 메소드를 붙여서 전송하는 방식

 

RESTful API 의 5가지 메소드

• Create(생성해줘) : POST
• Read(불러와 줘) : GET
• Update(바꿔줘) : PUT(전체) / PATCH(일부)
• Delete(지워줘) : DELETE

 

응답코드 

• 클라이언트가 서버에 요청(Request)을 하면 서버가 응답(Response) 을 클라이언트 쪽을 전달하는데
  응답코드(HTTP 상태코드)와 함꼐 데이터를 담을 수 있다
• HTTP 상태코드
 - 200(성공),
 - 400번대 코드(클라이언트의 요청에 문제가 있는 경우),
 - 500번대 코드(서버에 문제가 있는 경우)

 

 

🚨 SDK (Software Development Kit)

• API 를 제공해주는 다른 소프트웨어. 소프트웨어를 개발하기 위한 도구
  ex) 구글 지도 : 
    - 구글에서 만든 SW 소프트웨어
    - 다른 회사들이 구글에서 제공하는 지도 SDK 를 설치하면 자신의 소프트웨어에 구글 지도 기능을 넣을 수 있다
    - 이 SDK 에서 제공해주는 API 들을 통해 구글 지도에 요청을 보낼 수 있다

 

 

🚨 JSON

• 요청을 보낼 때, 혹은 응답을 받을 때 각 요청이나 응답마다 형식이 다르면 
  그 형식을 처리하기 위한 각자의 코드를 적어줘야 한다. 
  그렇게 되면 요청이 들어오는 개수만큼 대응코드를 따로 작성해야 하기 때문에 비효율적이다
  -> 그래서 데이터를 주고받을 때 유명한 형식으로 다같이 사용하도록 탄생한 형식이 JSON 형식이다
• 서버에서 클라이언트로 데이터를 보낼 때 사용하는 형식
• 과거에는 XML 이라는 형식이 널리 쓰였고 지금도 종종 쓰이긴 하지만, 현재 가장 유명한 형식은 JSON 이다
• 중괄호({..}) 로 시작하고, 콜론(:) 으로 구분하는 키(Key)와 값(Value) 으로 이루어져 있다

 {
   "id" : "myid",
   "name" : "eun"
 }
 {
   "id" : "myid",
   "name" : "eun"
 }

• 대괄호([..]) 로 배열 표시 가능

 {
   키1(Key) : 값1(Value),
   키2(Key) : 값2(Value),
   키3(Key) : [값3(Value), 값4(Value), 값5(Value)]
 }
 {
   "category" : "음료",
   "temp" : "ice",
   "items" : ["아메리카노", "카페라떼", "바닐라라떼"]
 }

• JSON 은 마치 데이터를 주고받는 주머니와 같은 개념으로,
  최근 개발자들은 클라이언트와 서버가 요청과 응답을 주고 받을 때 필요한 데이터들을 JSON 형식으로 주고받는다

 

 

🚨 깃북(GitBook)

• 깔끔한 API 문서 작성을 도와주는 서비스

 

 

🚨 Open API

• 몇몇 서비스들은 서버가 제공하는 다양한 기능들을 일반 사람들이 쓸 수 있게 오픈해 둔 API
• 그리고 개발자들은 그 서비스가 제공하는 API 문서를 보며 그 기능을 사용
  ex) 네이버 맛집 검색 애플리케이션 : 
      검색 결과에 네이버 블로그 후기 => 네이버 블로그에 들어가본다 => 네이버 블로그 영향력↑
    - 많은 사람들이 포털에 방문하면 힘과 돈이 생긴다. API 사용의 경우 특정 횟수 이상은 돈을 받기도 한다.
    - 비즈니스 모델이 될 수도 있고 프리미엄 기능에 대한 API 를 따로 정해놓는 방식으로도 돈을 벌 수 있다 
  -> 다양한 이유로 회사는 서버의 API 를 오픈한다

 

 


 

5장] 애플리케이션

 

 

🚨 애플리케이션

애플리케이션

- 애플리케이션 : 설치해서 사용하는 모든 프로그램
- 윈도우에서는 이를 응용 프로그램이라 불렀으나, 어느 순간 스마트폰이 등장하고, 앱, 애플리케이션 이라는말이 퍼지기 시작
- 데스크톱에 설치하는 프로그램 : 응용 프로그램, 스마트폰에 설치하는 프로그램 : 앱, 어플, 애플리케이션 라고 부른다.
- 애플리케이션은 운영체제 위에 올라가는 프로그램, 설치해야 하는 프로그램, 응용프로그램, 애플리케이션, 앱 모두 같은 그룹이다.

앱 생태계

- 모바일의 앱 마켓 : 애플리케이션을 올려놓고 판매하는 시장
- ex) 애플(iOS) : 앱스토어 , 구글(안드로이드) : 구글 플레이 스토어

 

 

감사합니다 8-)

728x90
반응형