나는 현재 코딩 공부를 독학중이다.
다만 요새는 부트캠프를 통해서 공부하시는 분들도 많다.
그 가치를 폄훼하시는 분들도 많은데, 부트캠프가 문제라기보다 수동적으로 단기간에 한 학습으로
실력이라고 착각하는 분들이 많으니 그런 것 같다.(개발자는 평생 공부!!)
그래서, 독학하되 부트캠프 내용은 모두 할줄 알아야 한다고고 생각한다!
코드스테이츠의 커리큘럼이 구체적으로 명시 되어 있어서 주차별로 내용을 기록 해본다.
웹 프론트엔드 개발의 기초지식을 기반으로 스스로 단순한 Web App을 만들 수 있다.
[개발 학습법]
프론트엔드 부트캠프에 잘 적응할 수 있도록 학습 방법과 마음가짐을 안내합니다.
[HTML/CSS] 기초와 활용
HTML/CSS의 기초 문법을 이해하고 응용하여 다양한 디자인과 레이아웃을 구현합니다.
[JavaScript] 기초 | 핵심 개념
JavaScript 기초 문법(변수, 함수, 타입)과 제어문(반복문, 조건문)을 이해합니다.
기초 문법과 제어문을 적용하여 배열과 객체를 이해합니다.
JavaScript 프로그램 작성을 위한 핵심 개념을 익히고, 코드를 분석하고 오류를 찾는 연습을 합니다.
[DOM] 기초
JavaScript DOM으로 웹 페이지에 변화를 주는 법을 배우고, 간단한 유효성 검사를 할 수 있습니다.
[솔로 프로젝트] 간단한 Web App 만들기
기초 제어문을 활용하여 계산기를 제작합니다.
클론코딩 가이드에 맞춰 정적인 개인 포트폴리오를 제작하고 Section 1을 복습합니다.
[회고] Section 1
Section 1에서 배운 내용을 회고하면서, 스스로 문제점을 파악하고 개선합니다.
[JavaScript] 심화 개념
고차함수 : 고차함수를 응용하여 복잡한 코드를 단순화할 수 있습니다
객체지향과 프로토타입 : JavaScript로 하는 객체 지향 프로그래밍과 프로토타입에 대해서 학습합니다.
비동기 : JavaScript 비동기 프로그래밍을 이해하고, 대표 패턴을 익힙니다.
[React] 기본 문법 | SPA | State | Props
JSX를 익히고 SPA 구현에 필요한 React Router를 학습합니다.
state, props 개념을 이해하고 React App에 적용합니다.
[네트워크] 기초
네트워크의 기초 지식을 기반으로 REST API를 이해하고 만들어진 REST API를 이용하는 법을 배웁니다.
[React] ajax 요청하기
네트워크 지식을 기반으로 Effect Hook내 ajax 요청을 이해합니다.
[Web Server] 기초
서버의 개념을 이해하고, node.js로 간단한 서버와 CRUD endpoint를 제작합니다.
[솔로 프로젝트] 통신이 가능한 Web App 만들기
서버와 통신하는 동적인 개인 포트폴리오를 제작하고 Section 2을 복습합니다.
동료와 포트폴리오를 공유하고, 서로 개선할 점을 Github Pull Request로 제안합니다.
[회고] Section 2
Section 2에서 배운 내용을 회고하면서, 스스로 문제점을 파악하고 개선합니다.
사용자 친화적이고 안전한 Web App을 만들 수 있다.
[자료구조/알고리즘] 재귀
재귀와 재귀함수를 이해하고 재귀함수를 통해 문제를 해결합니다.
[사용자 친화 웹] UI/UX 기초
사용자 경험 향상을 위한 UI와 UX에 대해 학습하고 적용해봅니다.
[사용자 친화 웹] 웹 표준 | 접근성 | 반응형 웹
사용자가 누구든 쉽게 접근할 수 있게 웹 표준과 접근성에 대해 학습합니다.
어떤 기기를 사용하든 쉽게 접근할 수 있게 반응형 웹과 SEO를 학습합니다.
[React] Custom Component | 상태 관리
UI를 체계적으로 제작하는 방법과 상태 관리 이론을 학습합니다.
[Web Server] 인증 | 웹 보안
사용자가 로그인하기 위한 방법과 절차를 이해하고, 사용자 구분을 위한 인증방법을 이해합니다.
웹 보안의 중요성과 보안 방법에 대해 학습합니다.
[솔로 프로젝트] 사용자 친화적이고 안전한 Web App 만들기
사용자 친화적이고 안전한 개인 포트폴리오를 제작하고 Section 3을 복습합니다.
동료와 포트폴리오를 공유하고, 서로 개선할 점을 Github Pull Request로 제안합니다.
[회고] Section 3
Section 3에서 배운 내용을 회고하면서, 스스로 문제점을 파악하고 개선합니다.
사람과 기계가 모두 쉽고 빠르게 접근 가능한 Web App을 만들 수 있다.
[HTML/CSS] 심화
웹앱의 동작원리를 이해하고, 다양한 사용자 경험을 제공하는 인터랙티브한 웹앱을 학습합니다.
[React] 번들링과 웹팩 | Advanced, Custom Hooks
Webpack을 이용하여 React 프로젝트 빌드 방법을 이해하고 빌드합니다.
React에서도 DOM 요소에 접근하여 인터랙티브한 웹앱을 만들 수 있습니다.
불필요한 렌더링을 최소화 하는 Custom Hooks을 학습합니다.
[컴퓨터공학 기초]
효율적인 코딩을 위해 필요한 컴퓨터공학 기초 지식을 학습합니다.
[GraphQL]
직관적이고 유연한 GraphQL에 대해 학습하고, REST API와 차이점에 대해 이해합니다.
[TDD]
바람직한 구조에 대해 먼저 고민하고 테스트를 만드는 TDD 방법론을 학습합니다.
[Optimization]
프론트앤드 개발에서 필요한 최적화 기법에 대해 학습합니다.
[Cloud] AWS, CI/CD
프론트앤드 개발에서 필요한 클라우드, 배포 자동화 개념을 익히고 배포 자동화 파이프라인을 구축해봅니다.
[자료구조/알고리즘] 코딩 테스트 대비
코딩 테스트 알고리즘 유형을 대비하고, 수학과 심화된 코딩 테스트 알고리즘 유형을 학습합니다.
컴퓨터 공학의 기본인 자료구조에 대해 이해하고 알고리즘 문제를 학습합니다.
[솔로 프로젝트] 사람과 기계가 모두 쉽고 빠르게 접근 가능한 Web App 만들기
사람과 기계가 모두 쉽고 빠르게 접근 가능한 개인 포트폴리오를 제작하고 Section 4을 복습합니다.
동료와 포트폴리오를 공유하고, 서로 개선할 점을 Github Pull Request로 제안합니다.
[회고] Section 4
Section 4에서 배운 내용을 회고하면서, 스스로 문제점을 파악하고 개선합니다.
First Project & Final Project
[First Project] 그동안 학습했던 내용들을 직접 활용하며, 본격적인 개발자로서 백엔드와 함께 웹 애플리케이션을 개발하는 방법을 체득합니다.
개발자의 기획 | 웹 애플리케이션 개발을 위해 필요한 기술 요구사항을 정의 및 작성합니다.
개발 협업 노하우 | 실제 개발 협업 시에 활용하는 방법을 학습하여 프로젝트 개발 과정에 적용해 봅니다. ex)애자일, 스크럼, git workflow
교육 엔지니어의 피드백 | 기획에 대해 교육 엔지니어의 피드백을 거쳐 완성도를 높이고, 주기적으로 그룹 회고를 진행하며 프로젝트의 방향성을 점검합니다.
프로젝트 제작 | 완성된 결과물을 구현하는 것을 목표로 팀원과 함께 IT 제품의 개발 및 배포를 진행합니다.
[Final Project] 포트폴리오로 활용될 완성도 높은 프로젝트를 기획, 개발합니다.
교육 엔지니어의 피드백 | 기획에 대해 교육 엔지니어의 피드백을 거쳐 완성도를 높이고, 주기적으로 그룹 회고를 진행하며 프로젝트의 방향성을 점검합니다.
프로젝트 제작 | 완성된 결과물을 구현하는 것을 목표로 팀원과 함께 IT 제품의 개발 및 배포를 진행합니다.
기술 발표 | 프로젝트 제작에서 얻은 소중한 지식과 경험을 공유하면서, 자신의 포트폴리오가 될 프로젝트를 설명하는 방법을 습득합니다.