Front-end, Back-end란 무엇인가?

프로그래밍/그 외2017. 11. 26. 22:00

안녕하세요. 개발자 드리머즈입니다.


Front-end, Back-end라는 단어는 참으로 많이 들었는데 제대로 이해한 적이 없는 것 같습니다.


http://www.terms.co.kr/front-end.htm에 다음과 같은 설명이 있습니다.

프론트엔드와 백엔드는 프로그램 인터페이스와 서비스의 최초 사용자와 관련된 특성을 나타내는데 사용되는 용어이다 (여기서 "사용자"란 사람 또는 프로그램이 될 수 있다). 프론트엔드 응용프로그램은 사용자들과 직접 상호작용을 하는 프로그램이다. 백엔드 응용프로그램은 보통 요구되는 자원들에 가깝게 있거나, 또는 요구되는 자원들과 교신할 수 있는 능력을 가지는 등을 통해 프론트엔드 서비스를 간접적으로 지원한다. 백엔드 응용프로그램은 프론트엔드와 직접 상호 작용할 수 있지만, 아마도 보다 일반적인 것은 중간에 또다른 프로그램이 개입되어 프론트엔드와 백엔드의 활동을 조정한다.  


예전에는 제대로 이해되지 않았던 것 같은데, 웹 서비스를 제공하는 app을 만들다보니.. 이해가 확실하게 되는 것 같습니다.


제가 이해한 그림은 위와 같습니다.

일단 front니 back이니 하는 것은 사용자 관점에서 바라본 단어 같습니다. 사용자에게 바로 보이는 앞-끝에서 Front-end가 왔고, 이와 반대로 사용자는 알 수 없는 뒤-끝에서 Back-end 단어가 생긴 것 같습니다.

웹 프로그래밍에서만 Front-end, Back-end 개념이 쓰이는지는 모르겠으나 웹 분야에서 본다면 Front-end는 일반적으로 사용자에게 직접 보이는 UI와 관련된 분야를 말합니다. 프론트엔드 프로그래머라면 웹에서 사용자에게 보이는 UI와 관련된 코딩을 하는 사람을 말합니다. 웹에서 CSS(cascading style sheets)를 담당하는 사람이면 프론트엔드 프로그래머겠죠? 그리고 프론트엔드 관련 코드는 client 쪽과 관련이 깊습니다. 사용자는 client를 이용해 서버와 통신하기 때문이죠.

이와 반대로 Back-end는 사용자는 알 수 없는, 사용자에겐 어떻게 동작하는지 보이지 않는, 사용자는 알 필요가 없는 부분을 말합니다. 백엔드 프로그래머라면 DB와 같은 resource에 접근하여 처리하는 부분을 담당하는 프로그래머일 것입니다. 백엔드 관련 코드는 server 쪽 코드일 것입니다.



*참고

프론트엔드, 백엔드 개념 설명 : http://www.terms.co.kr/front-end.htm

작성자

Posted by 드리머즈

관련 글

댓글 영역