2024. 3. 20. 17:10ㆍJava/이것이 백엔드 개발이다
■ 백엔드 개발이란?
- 일반적으로 백엔드 개발이라고 하면 '웹 백엔드 개발'을 이야기한다.
- 유튜브, 구글, 카카오톡 같은 서비스나 스마트폰 애플리케이션은 모두 웹을 통해 작동한다.
1. 웹 개발
- 웹은 '월드 와이드 웹(WWW)이라는 말에서 따온 것으로, 전 세계를 거미줄로 연결한다는 개념에서 가져온 말.
- 물리적 실체가 있는 것이 아닌 전 세계를 아우르는 정보 교환 방식 자체를 의미한다.
- 웹의 다른 이름은 'HTTP(Hyper Text Transfer Protocol)' 이다.
- 프로토콜이란 어떤 약속이나 규악을 말하는데, HTTP는 웹에서 사용되는 통신 규악을 의미한다.
- 서로 동일한 프로토콜로 통신 해야만 정상적인 데이터 교환이 가능하다.
- 웹 개발을 이해하는 것 = HTTP를 이해하는 것, 웹 개발 = HTTP 메시지를 주고받는 소프트웨어를 개발하는 것.
2. 프론트엔드와 백엔드의 분화
- HTTP가 세상에 등장한 지는 그리 오래되지 않았으나 불과 몇 년 만에 인터넷에서 매우 높은 트래픽을 차지하는 프로토콜이다.
- 개인 PC가 보급되면서 다양한 서비스가 제공됨에 따라 문서 외에 여러 형태의 데이터를 주고 받을 수 있게 발전하였다.
- 이렇게 웹 개발은 사용자의 눈에 보이는 부분을 다루는 '프론트엔드', 눈에 보이지 않는 부분을 다루는 '백엔드'로 나뉘게 된다.
3. 프론트엔드와 백엔드 분화의 가속
- 초기에는 웹 서비스가 비교적 간단한 형태였기 때문에 한동안은 한 명의 개발자가 프론트엔드와 백엔드 모두 개발하는 경우가 많았다.
- 스마트폰이 전 세계로 빠르게 보급되면서 스마트폰 자체에서 동작하는 애플리케이션이 생겨나게 됨.
- 동일한 서비스의 사용자 환경이 나뉘게 되면서 효율적인 서비스 제공 방법을 찾기 시작했다.
- 이 때 찾아낸 방법이 HTML 페이지와 데이터를 분리해 두 환경 모두를 위한 데이터를 제공하는 것이다.
- 백엔드와 프론트엔드의 결합도를 낮춰 두 영역이 각각 전문적으로 발전할 수 있는 토대가 되었다.
4. 백엔드 개발
- 백엔드는 프론트엔드와 스마트폰 애플리케이션의 요청을 처리한 후 사용자에게 다시 데이터를 전달하는 형태이다.
- 프론트엔트와 백엔드가 데이터를 주고받는 형태로 개발하는 것을 'API 개발' 이라고 한다.
- 프론트엔드 개발자와 백엔드 개발자는 서로 어떤 API를 사용하여 통신할 지 미리 정의해야 하는데 이때 API문서를 작성한다.
- API 서버는 많은 데이터를 저장하고 조회하는데 취약하기 떄문에 데이터베이스가 대량의 데이터 처리를 담당한다.
- 백엔드 개발자는 API 서버에서 데이터베이스로 데이터를 저장하거나 조회하고, 데이터가 늘어남에 따라 발생하는 성능 문제를 해결한다.
- DBA라는 직군이 있지만 백엔드 개발자 역시 데이터베이스에 대해 잘 알고 있어야 한다.
- API 서버를 개발하기 위해서는 자바, 코틀린, 파이썬 등 고수준 언어를 사용한다.
'Java > 이것이 백엔드 개발이다' 카테고리의 다른 글
API 문서 (0) | 2025.01.04 |
---|