[WEEK13] 나만의 무기를 준비하기
.📢 실전 프로젝트에 돌입하기 전, 프레임워크의 기본 동작 원리를 익힙니다.
실전 프로젝트에 사용될 프레임워크(Spring, Express, React 중 택1)를 익힙니다.
나만의 프로젝트를 직접 구현하는 즐거움을 느껴보세요!
진행 방법
💡 팀으로 합심하여 개인 과제를 해결합니다.
본격적인 서비스를 만들기 전 개인의 실력을 다지는 시간입니다. 개인으로 문제를 해결하되 팀원들과 함께 마일스톤을 촘촘히 세우고, 피드백을 깊이 나누세요.
Express, Spring, React 중 택1하여, 입문 및 숙련자료를 참고하여 기한 내 과제를 완료합니다.
chatGPT등 LLM의 도움을 받아도 괜찮습니다만, 각 모듈의 역할을 이해하는 데 힘써주세요.
의도 및 기대효과
현업에서 자주 사용되는 프레임워크를 활용해서, 웹서비스 기본 기능에 대한 구현력을 키웁니다.
주요일정
오늘
오후 4시: 프레임워크 선택 설문 마감
오후 5시: 프레임워크별 팀 배정
다음주 화요일 오전 10시 ~ 11시 반: 과제 결과 발표
팀 순서대로 발표하나 개인별 과제 결과 발표: 개인별 3분
자신이 완수한 과제의 장점, 자신의 기술적 장점을 중점으로 발표
팀배정
💡 같은 무기를 선택한 사람끼리 팀을 이룹니다.
과제
프레임워크를 선택하고, 해당 프레임워크 과제를 해결해서 배포하세요.
Express, Spring, React 중 택1
React 과제
💡 목표 : 나만의 React App 만들기
- 요구사항에 맞는 기능을 포함하여 나만의 React App 을 만들어봅니다.
- 기획이 창의적일 필요는 없습니다. 필수 기능을 구현해보며 동작 원리를 이해하려 노력해보세요.
과제를 진행하며 체크할 부분
- 상태관리 ( 유지 / 초기화 ) 가 잘 되어있나요?
- 각 컴포넌트의 재사용성이 높나요?
- 예외처리가 미흡한 부분은 없나요?
⚙️ 요구사항
- 필수 요구 사항
- UI/UX
- 기능의 UX를 고려해서 UI를 자유롭게 구성해보세요.
- 요구사항에 없어도 만들고 싶은 기능이 있다면 OK!
- 게시물 조회 / 추가 / 삭제 / 수정 기능
- 상태관리 라이브러리 활용
- ex) Redux, Recoil, Redux toolkit, Mobx 등
- 동적 라우팅
- 유효성 검증
- ex) 제목을 10글자 이상 기입하지 않으면, 글을 추가할 수 없도록 제한(
Alert
으로 안내)
- ex) Form에서 모든 input 값을 입력하지 않으면, 버튼 비활성화
- 배포된 결과물에서는
console.log()
가 보이지 않도록 처리합니다.
- 추가 요구 사항(선택)
- 로그인/회원가입 기능
- 1개 이상의
Custom Hook
- 버튼 컴포넌트 1개로 모든 버튼을 구현하세요. 모든 스타일과 기능을 적용할 수 있는 만능 버튼을 만들어봅니다.
⚙️ 참고자료
📌 링크가 포함되어 있으나 삭제하고 업로드합니다. 어떤 내용이 있나 참고만 해주세요.
- 입문 자료
- React 소개
- React 에서 자주 사용되는 필수 ES6 문법
- 개발환경 세팅
- CRA(Create React App)
- React Component
- JSX(JavaScript + XML)
- Props의 개요
- Props Children
- Props 추출
- State
- 불변성 & 순수함수
- Component & Rendering
- 실습 - 카운터 앱
- Styling
- 반복되는 컴포넌트 처리하기
- 컴포넌트 분리하기(독립 컴포넌트)
- 숙련 자료
- Styled Components - 소개, 사용
- Styled Components - GlobalStyles, Sass 소개, css reset
- React Hooks - useState
- React Hooks - useEffect
- React Hooks - useRef
- React Hooks - useContext(Context API
- React Hooks - 최적화(React.memo, useCallback, useMemo)
- LifeCycle - 클래스형 컴포넌트에서의 라이프사이클 이해하기
- DOM과 Virtual DOM
- Redux - Redux 설정
- Redux - 소개
- Redux - 설정 + 카운터 프로그램 만들기
- Redux - 카운터 프로그램 만들기2
- Redux - Refactoring(action creators, action values
- Redux - Payload 및 Ducks 패턴
- TodoList Refactoring 실습(Redux
- React Router Dom - 소개, hooks, children
- React Router Dom - Dynamic Route, useParam
- 비동기 프로그래밍 입문
- REST (Path Variable vs Query Parameter)
- JSON이란? (NoSQL 데이터 설계를 위한 기초지식)
회고
REACT 과제
참고자료에 대해서 리액트를 익힌 후에 과제를 시작하였다. 참고자료가 부실하였다.. ㅜㅜ 생략된 코드들이 너무 많았고, 답이 없는 실습도 있었다..
👩🏻💻 https://github.com/Yoosun-Chang/react_board
배포 사이트
나만무 팀 형성 과정에 정신없었던 것도 사실이다.
다른 프론트엔드 동기들은 백엔드와 협동하여 api 연결도 하고 그랬는데,,,
난 안할래~~ three.js를 공부하기도 바쁘다.
발표