프론트엔드? OR 백엔드?

위의 이미지는 빙산에 비유하여 프론트엔드와 백엔드를 한눈에 보여준다.
프론트엔드 Front-End
우리가 컴퓨터 혹은 스마트폰을 사용할 때 보는 화면,
즉 사용자 인터페이스(User Interface)를 말한다.
주로 사용하는 언어
- HTML
웹 페이지 혹은 앱의 전체적인 틀을 구성하며 쉽게 말해 뼈대를 담당하고 있다.
- CSS
HTML을 꾸미는 역힐로 만든 뼈대 위에 살을 담당한다.
- JavaScript
객체지향언어로 HTML로 만든 뼈대에 기능을 부여한다.
백엔드 Back-End
사용자가 보지 않는 영역으로 서버나 데이터베이스를 관리하는 기술이다.
데이터를 관리하고 서버가 정상적을 운영되게 한다.
주로 사용하는 언어
- JAVA
이식성이 좋고 인터프리터를 사용하는 객체지향 프로그래밍 언어.
- PhP
서버 사이드 스크립트언어로 수많은 웹 기반이 되는 언어.
- Python
직관적이고 수많은 라이브러리들을 가지고 있고 인터프리터를 사용하는 객체지향 프로그래밍 언어.
- Ruby
스크립트 언어의 일종으로 python과 라이벌 관계로 객체 지향 프로그래밍 언어.
정리
| 프론트엔드 | 백엔드 | |
|---|---|---|
| 주요 언어 | HTML, CSS JavaScript | Java, Spring PhP, Ruby |
| 주요 업무 | 사용자가 볼 수 있는 화면 구현 | 서버 개발 및 관리 DB 관리 API 개발 |
| 프레임워크 | 앵귤러, 리액트, 뷰 등 | 스프링, 익스프레스, 플라스크 등 |
무엇을 선택할 것인가
직접 프론트엔드 프로젝트를 진행하다가 데이터를 관리하고 배포를 하는 과정에서 백엔드를 접하게 되었다.
클라우드 컴퓨팅을 이용하여 서버를 구성하고 DB를 설계하면서 마치 겉으로 보기엔 단순한 시계가
그 속의 복잡한 부품들로 동작하듯이 백에서 구축한 서버나 유지보수를 통해 끊임없이 사용자에게
최적의 서비스를 제공하는 것에 매력을 느끼게 되었다.
점점 IT 서비스의 규모가 커지고 있는 가운데 서버 구축 및 관리하기 위해 백엔드에 대해 더 깊이 알아보고자 한다.
어떤 백엔드 개발자가 될 것인가