50. Back-end/55. TDD
0-1. OT & MindSet & ETC
Wooris
2022. 10. 19. 15:11
1. 시작하며
- 강의 목표와 온라인 과정 개설 이유
- 심리적안정감
- 교육에 몰입 => 최고의 학습 효과
- 교육 끝난 후
- 행동의 변화 : 적극적인 태도로 학습에 임하는 자세
- 고통스러운 만큼 성장한다.
- 행동의 변화 : 적극적인 태도로 학습에 임하는 자세
- 심리적안정감
2. 과정의 학습목표
- TDD, Refactoring, Clean Code
- 순수 자바로 객체지향 프로그래밍
- 레거시코드 리팩토링
3. 학습목표 및 커리큘럼
- A. 초간단 자동차 경주 게임
- Github 기반으로 온라인 코드 리뷰하는 경험
- JUnit 사용법을 익혀 단위 테스트하는 경험
- 자바 code convention을 지키면서 프로그래밍하는 경험
- 메소드를 분리하는 리팩토링 경험
- B. 로또
- TDD 기반으로 프로그래밍하는 경험
- 메소드 분리 + 클래스를 분리하는 리팩토링 경험
- 점진적으로 리팩토링하는 경험
- C. 사다리 타기
- 자바8의 스트림, 람다를 사용해 함수형 프로그래밍하는 경험
- In -> Out, Out -> In 방식으로 도메인 객체를 설계하는 경험
- 책임주도설계 기반으로 인터페이스 활용해 프로그래밍하는 연습
- D. 볼링 게임 점수판
- Q&A 서비스를 활용해 레거시 코드를 리팩토링하는 경험
- 지금까지 학습한 내용을 기반으로 TDD, 클린코드, 객체지향 프로그래밍하는 경험
4. 과정을 슬기롭게 소화하는 방법
- 잘 열심히
- 리뷰하는 사람한테 DM을 보내서라도 적극적으로 토론하고 물어보고 넘어가자
- 환경을 바꿔라
- 원래 의지력은 약한다 변화를 위해 의지력 보다는 환경의 변화가 중요하다 = 의지력을 믿지말고 물리적 환경을 변화시킨다.
- 학습의 가장 큰 적 = 조급함
- 마음의 여유를 가지고 단계를 즐겨보자
- 정답을 찾기위해 집착하지 말자
- 정답은 없다 = 정답을 찾으려는 노력이 학습을 방해한다.
- 최선의 답이 무엇인지 찾으려는 노력을 할 뿐이다.
- 가능하다면 함께해라
- 스터디도 진행하고 모여서하고 짝프로그래밍도 하고 기타 등등
- 혼자한다면
- 가능한 힌트를 보지 않고 스스로의 힘으로 구현
- 리뷰어의 피드백을 받고 핑퐁을 거치면서
- 더 이상 리팩토링이 불가능하다면 모든 코드 삭제 후 처음부터 다시 구현
5. 동시에 진행해도 될까?
- 해당 미션을 끝내가는 시점에 시작