본문 바로가기

Backend/Spring & SpringBoot

Restful Web Service

728x90

어떻게 하면 웹서비스를 편안하게 개발할까?

 

Rest에 대해 학습 이유?

백엔드 개발자의 시작은 바로 프론트엔드와 연동하기 위한 API 개발이다. 그래서 백엔드 개발자가 되기로 마음을 먹었다면 ‘원하는 기능의 API를 만들어야지’ 라고 생각 하면된다. 그중에서도 REST API를 시작하면 좋은 이유는 오랫동안 API개발의 표준 처럼 사용 되어 왔고 서버개발의 전반적인 흐름을 이해 하는데 도움이 되기 때문이다. 최근에는 GraphQL을 도입하는 회사들도 많아지고 개발 생산성도 좋은 편이지만 아직 까지는 좋은 백엔드 개발자가 되기 위해서는 REST API를 먼저 익히고 학습 하는게 좋다고 생각한다.

RestFul Web Service란 무엇인가??

=> URI + HTTP standard method를 통해 Server에 요청

=> 웹서비스를 편안하게 개발하기 위해서 고안된 방식

=> Method, Resource, Message 3가지를 통한 패턴이라고 볼 수 있다. (ex. [post, JSON, 201 CREATED] ... ) 

=> 아이폰, 웹페이지 안드로이드등 어떠한 플랫폼이라도 의존하지 않고 사용할 수 있는 장점이 있다.

Rest API 사용 이유

1. 분산 시스템을 위해서다.

거대한 애플리케이션을 모듈, 기능별로 분리하기 쉬워졌다. RESTful API를 서비스하기만 하면 어떤 다른 모듈 또는 애플리케이션들이라도 RESTful API를 통해 상호간에 통신을 할 수 있기 때문이다.

 

2. WEB브라우저 외의 클라이언트를 위해서다. (멀티 플랫폼)

웹 페이지를 위한 HTML 및 이미지등을 보내던 것과 달리 이제는 데이터만 보내면 여러 클라이언트에서 해당 데이터를 적절히 보여주기만 하면 된다.

예를 들어 모바일 애플리케이션으로 html같은 파일을 보내는 것은 무겁고 브라우저가 모든 앱에 있는 것은 아니기 때문에 알맞지 않았는데 RESTful API를 사용하면서 데이터만 주고 받기 때문에 여러 클라이언트가 자유롭고 부담없이 데이터를 이용할 수 있다. 서버도 요청한 데이터만 깔끔하게 보내주면되기 때문에 가벼워지고 유지보수성도 좋아졌다.

 

 

HTTP Method URI Operation
GET /api/users returns a list of users
GET /api/users/1 returns the user with ID 1
POST /api/users creates a new user
PUT /api/users/3 updates the user with ID 3
DELETE /api/users/4 deletes the user with ID 4
DELETE /api/users deletes all the users

=> Client가 이러한 인터페이스를 통해 보내주면서, 결과물에 대해서 예측 가능할 수 있다. 


 


참고자료

 

 

 

백엔드 개발자(Backend Developer)가 되기 위해 필요한 지식들 - 초급(Basic)

주변에서 백엔드 개발자(Backend Developer)가 하는 일을 물어볼 때 나는 이렇게 대답 한다.

www.howcooliscoding.com

 

 

REST API 제대로 알고 사용하기 : NHN Cloud Meetup

REST API 제대로 알고 사용하기

meetup.toast.com

 

728x90