본문 바로가기

프로그래밍/용어 및 개념

프론트엔드(Frontend)와 백엔드(Backend)

프로그래머, 개발자는 크게 프론트엔드(Frontend) 개발자, 백엔드(Backend) 개발자로 분류됩니다. 이 두 가지 기능을 전부 할 수 있는 개발자는 풀스택(Full-Stack) 개발자라고 합니다. 프론트엔드와 백엔드가 각각 어떤 기능을 수행하며, 무엇을 하는 지에 대해 간단하게 개념만 짚고 넘어가도록 하겠습니다. 


○ 프론트엔드(Frontend)

프론트엔드 개발은 웹 클라이언트(사용자)가 웹 브라우저를 통해 사용하는 유저 인터페이스를 개발하는 것을 말합니다. 즉, 우리가 페이스북을 이용한다고 했을 때 우리에게 보여지는 페이스북의 디자인, 버튼 기능 등을 담당합니다. 프론트엔드 개발자가 되기 위해서는 HTML, CSS, JavaScript를 기본적으로 숙지해야 하고, Bootstrap, AngularJS 등과 같은 프론트엔드 개발에 자주 사용되는 프레임워크를 공부해야 합니다. 


○ 백엔드(Backend)

백엔드 개발은 말 그대로 웹 사용자가 볼 수 없는 뒷모습을 위미합니다. 즉, 클라이언트 사이드(사용자 측면)의 반대인 서버 사이드(제공자 측면)의 개발을 하는 것을 말합니다. 서버 사이드란 크게 서버, 어플리케이션, 데이터베이스를 말합니다. 즉, 우리가 페이스북에 자신의 계정을 만들고 글을 올리거나 사진과 비디오를 업로드할 때 사용자의 정보를 어떻게 데이터베이스에 저장을 하고, 업로드된 사진과 비디오가 어디에 저장될 것인지에 대한 사항 등을 어플리케이션을 통해서 관리해야 하는데, 백엔드 개발자는 이러한 데이터베이스의 디자인부터 어플리케이션의 개발까지를 담당하는 것입니다. 백엔드 개발에서 사용되는 언어는 파이썬(Python)을 포함하여 PHP, 루비(Ruby), SQL, Java, C# 등이 있습니다.