1 프론트엔드란?
1) 정의
→ 사용자가 직접 보는 화면, 버튼, 메뉴 등의 웹 화면을 만드는 일
2) 기본 3요소
| HTML | 제목, 버튼 등의 웹페이지의 구조 |
| CSS | 색상, 크기, 위치, 애니메이션 등의 시각적인 스타일 |
| JavaScript | 클릭, 입력 등 사용자 행동에 따라 반응하는 기능 |
3) 프론트엔드 개발자가 하는 일
→ 디자이너의 시안을 실제 웹으로 구현하는 UI 구현
→ 클릭, 입력 등 사용자 인터랙션을 개발하는 동작 처리
→ 빠른 로딩과 부드러운 스크롤을 구현하는 성능 최적화
→ 장애가 있어도 모두가 이용 가능한 웹을 만들어 접근성 확보
→ Git으로 코드를 공유하고, 백엔드와 연동하여 협업
4) 브라우저 개발자 도구 요약
| Elements | HTML/CSS 구조 실시간 확인 및 수정 |
| Network | 로딩 속도, 데이터 요청 상태 확인 |
| Lighthouse | 성능, SEO, 접근성 자동 평가 |
| Device Toolbar | 스마트폰/태블릿 반응형 테스트 |
5) UX, UI, 마이크로 인터랙션
| UX | 사용자가 쉽고 빠르게 목표를 이루는 경험 |
| UI | 실제로 보이는 글씨, 색, 버튼, 이미지 등 시각 요소 |
| Microinteraction | 클릭 시 작은 애니메이션, 진동 등 사용자 만족을 높이는 디테일 |
6) 협업과 테스트 기본기
| Git과 Pull Request | 협업용 코드 버전 관리 도구 |
| 크로스 브라우저 테스트 | 모든 브라우저에서 동일하게 작동 확인 |
| 디버깅 | 코드 오류 추적 및 수정 |
| 접근성 점검 (a11y Audit) | 키보드만으로 사용 가능한지 테스트 |
2 프레임워크란?
1) 정의
→ 개발을 위한 틀과 규칙
→ 자동화 도구 세트
2) 주도권 차이
→ 라이브러리는 내가 호출
→ 프레임워크는 내 코드를 호출
3) 구성 요소
→ 구조, 규칙, 실행 엔진, CLI 도구 포함
4) 예시 흐름
→ init 후에 컴포넌트를 호출하고 나서 DOM에 출력
5) 프레임워크가 필요한 이유
→ 파일 위치와 코드 흐름을 명확하게 정리하기 위한 구조 자동화
→ ESLint, Prettier 등으로 스타일을 통일하여 협업 효율화
→ 데이터가 바뀌면 화면도 자동으로 반영하여 상태관리 자동화
→ 빌드, 핫리로드, 테스트, 베포까지 자동화 기능
→ npm 설치 한 줄로 로그인, 차트 등을 구현하여 강력한 생태계를 지원
→ SSR/SSG, 시맨틱 태그, ARIA를 자동으로 지원하여 SEO & 접근성이 좋음
→ 정해진 패턴 덕에 예측 가능하고 안전한 코드로 버그 예방
→ 리팩터링과 테스트가 쉬워 유지보수가 용이
→ WebAssembly, Edge, Serverless 등 연동이 쉬워 최신 기술 지원
3 프론트엔드 대표 프레임워크 8종 요약
1) React
→ UI를 '함수형 컴포넌트'로 쪼개서 JSX, useState, Hook으로 조립
→ 자료와 생태계가 최대이고, 확장이 자유로움
→ 라우터, 상태관리 등 직접 골라야 해서 초보자에겐 선택이 과부화
→ 입문 난이도는 별 2개
2) Vue
→ HTML 같은 템플릿과 자동 반응 ref/reactive와 최근 Composition API
→ 문법이 직관적이고, 작은 앱에서 대형 앱으로 확장이 용이
→ React만큼 방대한 라이브러리는 아직 부족
→ 입문 난이도는 별 1개
3) Angular
→ TypeScript 기반의 '올인원' 통합 프레임워크로 DI, 라우터, 폼 내장
→ 대규모 팀/기업에 최적하고, 규칙과 도구 완비
→ 구조가 복잡하고 자유도가 낮음
→ 입문 난이도는 별 4개
4) Svelte
→ '빌드 타입'에 일을 처리하여 런타입 부담이 줄어들고 $:로 자동 반응
→ 코드과 결과물이 가볍고, 문법이 쉬움
→ 생태계와 자료가 아직 적음
→ 입문 난이도는 별 1개
5) Next.js
→ React와 SSR/SSG와 API Route와 폴더 기반 라우팅
→ SEO 초기 로딩이 우수하고 배포가 손쉬움
→ 폴더 구조가 강제고, 서버 개념이 필요
→ 입문 난이도는 별 2개
6) Nuxt
→ Vue 버전의 Next.js
→ Vue 개발자가 SEO 사이트를 쉽게 제작
→ Vue 전용이라 타 생태계와 혼합이 힘듦
→ 입문 난이도는 별 2개
7) SolidJS
→ React 문법과 단방향 신호로 런타임이 최소화
→ 속도와 번들 크기가 최고 수준
→ 개념과 도구가 아직 실험적
→ 입문 난이도는 별 2개
8) Qwik
→ HTML이 먼저, JS는 필요한 순간만 다운로드
→ 초고속 퍼스트 로딩
→ 문서와 사례가 적고, 새 개념이 많음
→ 입문 난이도는 별 3개
9) 입문 추천
→ 독학하고, 자료가 많은 거는 React / Next.js
→ HTML에서 JS 스무스는 Vue / Nuxt
→ 대기업과 공공 대형 피로젝트는 Angular
→ 가볍고 빠른 개인이나 스타트업은 Svelte / SolidJS / Qwik
4 프레임워크 선택 3단계 체크리스트
1) 현재 상황
→ 팀 규모 / 배포 속도 / SEO 필요성 / 타입스크립트 경험 / 성능 요구
2) 우선순위 매칭
| 자료와 커뮤니티가 풍부 | React, Next.js |
| HTML 친화적이고, 빠른 학습 | Vue, Nuxt |
| 모든 기능이 내장되었고, 대규모 | Angular |
| 최소 번들과 고성능 | Svelte, SolidJS, Qwik |
| 강력한 SEO | Next.js, Nuxt |
| TypeScript 필수 | Angular, SolidJS, Next.js |
3) 1H 체험
→ 공식 CLI로 새 프로젝트로 Hello World, 라우팅, 간단한 상태 변경까지 직접 실행
→ 자신의 손에 익는 프레임워크를 사용
5 프레임워크 전에 꼭 잡아둘 JavaScript 기초 로드 맵
1) 문법 뼈대
→ const/let, 기본 자료형, 배열과 객체
→ 함수(화살표), 조건과 반복, 배열 메서드 map/filter
2) 브라우저 조작
→ DOM 선택과 수정, 이벤트 핸들링, 모듈 import/export
3) 프론트엔드 필수 감각
→ async/await 비동기, 상태(State) 개념, 컴포넌트 분리
6 프로젝트 구조 이해
1) 왜 '구조'를 먼저 익혀야 할까?
| 이유 | 얻는 효과 |
| 코드 위치가 명확 | 수정과 추가를 단순한 검색으로 바로 작업 가능 |
| 팀원 온보딩 1-Day | 새 멤버도 폴더만 보면 전체 그림이 파악됨 |
| 버그 영향 최소화 | 기능별 파일을 분리하므로 다른 부분에 영향이 없음 |
2) React 기분 폴더 트리 예시

→ 다른 프레임워크도 이름만 살짝 다를 뿐, 역할은 같음
→ src -> App -> pages -> components 순으로 내려가면 흐름이 보임
3) 핵심 파일과 폴더 한 줄 메모
→ public/index.html은 <div id = "root">로 JS앱이 붙을 자리
→ src/assets/는 import img from "./assets/photo.png"식으로 불러옴
→ components는 재사용이 100%인 목표로 디자인과 로직이 최소화
→ pages/는 라우터가 1:1 매칭이고, 페이지 전환을 전담
→ App.jsx는 전역 레이아웃, 공통 헤더와 푸터, 라우트 맵
→ package.json은 npm run dev / build / lint 스크립트 저장소
→ README.md은 팀 규칙, 설치, 배포 가이드로 '첫 인상' 문서
7 오늘부터 쓰는 성장 루틴 15분 버전
→ 어제 배운 것을 한 줄 노트로 3분
→ 공식 문서 단락 3개를 훑기로 5분
→ 코드 10줄 타이핑하고 콘솔 확인으로 5분
→ '왜 이렇게 짰지?' 혼잣말 점검으로 2분
8 초보가 자주 넘어지는 5가지
| Error 로그 무시 | 복사해서 검색하여 같은 case 읽기 |
| 한꺼번에 큰 기능 구현 | '버튼 하나에서 리스트 하나'로 작게 쪼개기 |
| 복사하고 붙인 후 의미 모름 | 줄마다 주석을 달아서 의미 파악 |
| 모르는 용어 방치 | 30초만 검색만 해도 전체 맥락이 잡힘 |
| 같은 에러 반복 | '실수 노트' 폴더 만들어 기록 |
9 가장 많이 묻는 3가지 FAQ
| 개념이 너무 많아요! | Why -> How 순서로 하나씩 하고, 안 쓰면 건너뛰기 |
| 공부 시간이 부족해요! | 출퇴근 10분 메모후 주말에 집중 실습 |
| 계속 같은 실수를 해요! | 실수 노트를 작성하여, 다음엔 검색만으로도 절반 단축 |
10 다음 레벨 챌린지
→ Dribbble / Behance UI를 한 장 골라 똑같이 구현
→ VSCode에 Prettier + ESLint를 적용
→ 매일 백준과 프로그래머스 1문제로 JS 감각 유지
→ 오픈소스 README 번역 PR -> GitHub 협업 플로우 체험
프론트엔드 프레임워크에 대해 더 상세한 설명을 원하는 분들은 아래 사이트에 접속
프론트엔드 프레임워크 뿐만 아니라 다른 프로그래밍 언어 정보를 원하는 분들은 아래 사이트에 접속하여 원하는 링크에 접속
'공통' 카테고리의 다른 글
| 백엔드란? 백엔드가 하는 일부터 구조까지 완전 정리 (입문자용 가이드) (1) | 2025.07.24 |
|---|---|
| 프론트엔드 라이브러리란? React와 Vue 쉽게 비교 정리 (1) | 2025.07.19 |
| 프론트엔드 입문 완벽 가이드: HTML, CSS, JS부터 반응형 웹, DOM까지 한 눈에! (3) | 2025.06.27 |
| 코딩이란? 누구나 이해하는 코딩 개념부터 시작하는 입문 가이드 (9) | 2025.06.26 |
| [프로그래밍 기초] 제어 구조 완벽 정리 - 순차, 조건, 반복문과 흐름도까지 쉽게 설명 (1) | 2025.06.25 |