백엔드 (Backend)란?

만일, 독자여러분이 프론트엔드 개발자라면, 어느 순간 이런 물음이 생길 수 있습니다.

사용자프론트엔드에서 어떤 행동을 하면, 프론트엔드에서도 그 요청을 받아 처리하고 결과를 돌려줄 수 있는 것 아닌가..?”→ “어 벡엔드 필요없나?”

만일 여러분들이 위와 같은 생각을 하셨다면, 아예 틀린 말은 아닙니다. 사실 프론트엔드에서도 받아온 데이터를 처리하고 직접 DB, API 서버와 소통하며 직접 벡엔드 구현하지 않고 어플을 만들 수 있습니다. (실제로 초기 어플들은 이런 방식으로 많이 구현되었답니다. 하하..옛날얘기)

그렇다면 우리는 왜 백앤드 프론트앤드를 구분지어 개발하고 관리하는 것일까요?

아주 슬픈 예시를 통해 그 필요성에 대해 짐작해봅시다.


이 슬픈 예시 속, 지금부터 당신은 모바일 프론트앤드 개발자입니다.

근무 중인 회사는 자산관리 서비스 회사라고 가정해보죠.

당신의 회사는 새로운 “본인 자산 확인 기능”을 개발하려 합니다.

아직 백앤드의 필요성을 못 느낀 당신은 고객의 자산정보를 불러오기 위한 개발로 직을 다음과 같이 구상합니다.

계획은 이러합니다, 은행들이 제공하는 “본인 자산 데이터를 요청 API”를 프런트엔드로부터 직접 은행이 제공한 API 통신을 통해 고객의 자산 정보를 가져온다(1), 가져온 데이터를 가공해 유저에게 보여준다(2).

오히려 백앤드가 없으니 처리 과정이 간소화되고 로직이 깔끔해진 것 같습니다.