Dev-Tino

Dev-Tino 1주차(2):: 프론트엔드, 백엔드(Front-end, Back-end)

프론트 엔드, 백 엔드, FrontEnd BackEnd 차이점, 프론트엔드 백엔드 특징

저번 내 과제가 딱 이 모양 이 꼴이었다

프론트엔드, 백엔드

웹 개발에 대해 배울 때 제일 먼저 배우는 개념 둘. ‘프론트 엔드’와 ‘백엔드’. 나는 부끄럽게도 둘에 대해 제대로 탐구하지 않아 겉핥기정도로만 기억하고 있었다. 프론트 엔드는 ‘사용자와 상호작용하는 UI/UX’,백엔드는 ‘프론트엔드에서 받은 정보를 정리하고 저장하는 데이터 베이스’…. 정도로 말이다.

그러나 웹 개발 프로세스에서, 프론트엔드와 백엔드는 매우 많은 차이점을 가지고 있다. 우리는 이 둘에 대하여 명확하게 인지하고 구분할 필요가 있다.

프론트 엔드란 ‘사용자에게 보이는 기계나 서비스’(computing : visible to the user of a device or service, merriam-webster)이다. 글리프를 키면 보이는 이미지, 파일, 링크 버튼, 이 ‘모든 화면’이 프론트 엔드인 것이다. 사용자가 볼 수 있는 모든 화면이라 이해해도 좋다.

그렇다면 백엔드는 어떨까? 백엔드는 ‘사용자가 볼 수 없는 환경’이다. 정보와 데이터를 저장하고 관리하는 모든 과정이다. ‘프론트엔드에 있는 사용자들이 원하는 행동을 처리하는 것’이라고 이해하면 편하다. 데이터를 관리하고 저장하는 백엔드는 프론트엔드에 비해 상대적으로 어렵다는 평가를 받는데 백엔드의 경우 ‘웹서비스에 대한 전반적인 이해’가 필수적으로 요구되기 때문이다. 그래서 종종 우스갯소리도 한다. “백엔드는 어려워보이는데 프론트엔드나 할까? 그거 익히기 쉽대.”

맞는 말이지만, 프론트엔드를 잘 하는데에는 익혀야 할 게 많다. 프론트 엔드는 적어도 세 개의 언어를 배워야 한다. ‘HTML’, ‘CSS’, ‘JavaScript’ JS(JavaScript)기반의 React를 배우면 더 좋다. 이 세 개를 이용해야만 동적으로 움직이며 상호작용하는 사이트를 만들 수 있다.

반대로 백엔드는 한 개의 언어만 파고들면 된다. Java, PHP, Python과 같은 언어 중 하나만 파고들어도 좋은 결과를 낼 수 있다.(하나를 익히면 다른 것도 쉽게 익힐 수 있다!) 웹 서비스의 이론에 대해 알아야 한다는 것은 차치하고 말이다.

각자 특징이 있고, 장단점이 존재한다. 어떤 개발자가 될 지는 각 분야의 특징을 참고하고 결정하는 것이 좋다.

프론트 엔드의 특징::

-사용자와 상호작용하는 인터페이스

-웹 및 앱의 시각적인 부분 담당, 사용자 경험(UX) 개선

-디자이너와 협업할 일이 잦음. 디자인 감각과 센스 요구

백엔드의 특징::

-서버 측 개발 담당

-데이터 처리, 비즈니스 로직 구현, 데이터베이스 관리 수행

-보안과 성능 초점

-프론트엔드와 서버 사이의 상호작용 관리

정리::

프론트엔드는 ‘사용자와 상호작용하는 창’, 백엔드는 ‘정보를 받아 처리하는 보이지 않는 부분’

[자료 출처]

-https://www.merriam-webster.com/dictionary/front-end

-https://zero-base.co.kr/event/media_insight_contents_BE_front_back

카테고리
#기타

댓글 0



추천 포스트