프론트엔드 개발자가 탄생하게 된 배경은 웹 기술의 발전과 함께 점점 더 복잡해지고 정교해진 사용자 경험의 요구에서 비롯되었다. 초기 웹 페이지는 정적인 텍스트와 이미지로 구성된 단순한 문서들이었지만, 웹이 발전함에 따라 더 동적이고 인터랙티브한 웹 애플리케이션이 필요해지게 되었고, 이에 따라 프론트엔드 개발의 중요성이 급부상했다. 이번 글에서는 프론트엔드 개발자가 탄생하게 된 배경과 그 진화를 살펴보자.
(참고) 여기서 말하는 사용자 경험이란?
렌더링에는 2가지 방식이 있다
1. CSR(Client-Side Rendering): 클라이언트(보통 브라우저)에서 페이지를 렌더링하는 방식
2. SSR(Server-Side Rendering): 서버에서 페이지를 렌더링하는 방식
이전에는 SSR(Server-Side Rendering) 방식이 주를 이루었고, 웹 페이지는 주로 서버에서 미리 만들어진 HTML을 클라이언트에게 전달하는 방식으로 동작했다. 이 당시 웹 페이지는 정적인 콘텐츠가 대부분이었고, JavaScript는 주로 간단한 인터랙션(예: 버튼 클릭, 폼 검증 등)을 처리하는 용도로만 사용됐다.
그러나 시간이 지나면서 웹 애플리케이션이 더 복잡해지고, 사용자 경험을 극대화하기 위해 동적인 데이터와 즉각적인 화면 업데이트가 중요한 요소가 되어갔다. 특히, SPA(Single Page Application)의 등장으로 인해 클라이언트 측에서 페이지를 렌더링하고 업데이트하는 CSR(Client-Side Rendering) 방식이 필요해졌다.
이때 AJAX(Asynchronous JavaScript and XML) 기술의 발전으로 웹 페이지 일부를 비동기적으로 갱신할 수 있게 되면서, 클라이언트 측에서 데이터를 받아와서 화면을 동적으로 업데이트하는 방식이 가능해졌다. 더불어 React, Vue.js, Angular와 같은 프레임워크들이 CSR을 기반으로 하여 등장했고, 이를 통해 더욱 빠르고 유연한 사용자 경험을 제공할 수 있게 되었다.
따라서 이전에는 웹 개발자가 주로 서버 측에서 모든 것을 처리했지만, CSR 기술이 발전하면서 JavaScript를 중심으로 한 프론트엔드 기술이 중요해졌고, 프론트엔드 개발자라는 역할이 명확하게 구분되기 시작했다.
[정리]
- 프론트엔드 개발자: 클라이언트 측에서의 렌더링, 사용자 인터랙션, 성능 최적화 등을 주로 담당
- 백엔드 개발자: 서버 측의 비즈니스 로직과 데이터 관리를 처리
프론트엔드 개발자는 웹의 발전과 함께 그 중요성이 점점 더 커지고 있는 직군이다. 정적인 웹 페이지에서 동적이고 복잡한 웹 애플리케이션으로의 전환, 모바일 환경의 대두와 프레임워크의 발전은 프론트엔드 개발자를 중요한 역할로 자리매김하게 했다. 앞으로도 기술의 발전에 따라 프론트엔드 개발자의 역할은 계속해서 진화할 것이며, 더 나은 사용자 경험을 제공하는 데 중요한 역할을 할 것이다.
'프레임워크 > 웹 지식' 카테고리의 다른 글
엔드포인트(Endpoint)에 대해서 (1) | 2024.10.05 |
---|---|
사용자 경험(UX)에 대해서 (1) | 2024.10.05 |
데이터 파싱이란?(feat. CSV, XML, JSON, YAML과 AJAX) (1) | 2024.10.04 |
AJAX와 CSV, XML, JSON, YAML (7) | 2024.10.04 |
렌더링 - CSR과 SSR (w/TTV, TTI) (5) | 2024.10.02 |