API란 무엇일까?

전은찬·2023년 1월 11일
0
post-thumbnail

코딩 부트캠프 3일차.

내 생각에 진도가 빠르다고 느끼지만 막상 해보면 할만 한 것 같다.
어느정도 과제를 진행하면서 할 만 하다고 느끼고 남들보다 먼저 과제를 완료하면 뿌듯하고 기분도 좋다!!

오늘은 API에 대해 배운 날이다.
API는 정말.. 아주 정말 쉽게 말하면 백엔드와 프론트엔드가 소통하는 프로그램(?)이라고 생각할 수 있을 것 같다.
강의를 들으면서 API가 뭔지.. 통신 등등 이해하기 어려운 내용이 많았지만 직접 해보니 이해하기에 어렵지 않았다.

API의 종류는 크게 rest-API, graphql-API로 2가지가 있다.

rest-API는 응답결과로 백엔드 개발자가 만든 함수에서 보내주는 모든 데이터를 받아야만 한다.
이 방식은 원하는 데이터를 따로 쓸 수 없어서 불편하다.

반면에 graphql-API는 백엔드 개발자가 만든 함수에서 필요한 데이터만 뽑아 쓸 수 있기 때문에 편리하다고 할 수 있다.

rest-API에 요청하는 담당자는 axios 이고, graphql-API에 요청하는 담당자는 apllo-client이다.

graphql-API는 필요한 데이터만 골라 받을 수 있는 장점이 있어 보다 효율적인 통신이 가능하다고 한다!!

참고로 graphql은 페이스북에서 발생하는 많은 데이터를 처리하기 위해 페이스북 개발팀에서 만들었다..
대단한 페이스북 개발팀..!!

API는 크게 4가지 방식으로 구분되는데,
새로운 것을 생성하는 CREATE,
기존의 것을 조회하는 READ,
기존의 것을 수정하는 UPDATE,
기존의 것을 삭제하는 DELETE 가 있다.

위의 4가지 중에 위험한 방식은 3가지이고, 안전한 방식은 하나다.
생성, 수정, 삭제는 기존의 적용된 것을 업데이트(?)하기 때문에 위험하다고 할 수 있고,
조회하는 방식은 위의 3가지가 진행된 후에 불러오기만 하는 방식이라 직접적인 영향이 없기때문에 안전한 방식이다.

그래서 rest-API, graphql-API 두가지 방식을 활용할 때 직접 입력하기에 안전한 방식은 입력하기에 어려움이 없었고, 위험한 방식은 입력 조건이 까다로웠다..

이번 3일차 TIL에서 배운 건 많지만 내가 설명하기에 부족함이 너무 많다.
막상 실습이나 과제를 진행하기에 어렵지않았지만 블로깅하기에 너무 어색하다.
더 많이 배우고 더 많이 복습해서 내가 하고 싶은 말을 하고 싶은대로 할 수 있게 노력해야겠다.

오늘은 실습보다 이론적인 걸 많이 배워서 이해하느라 힘들었지만,
이해한 것을 블로깅하는 것도 실력이라고 느껴지는 오늘이다..

profile
no record no memory

0개의 댓글