1주차부터 2주차까지
이제 1주차가 끝나고 2주차가 됐습니다.
뭔가 1주차보다 2주차가 문제가 더 어려워졌지만, 적응이 돼서 그런가 시간도 빨리 가고 학습도 조금 수월하게 진행했습니다.
하지만 실패했던 경험이 되게 많았습니다. 문제가 진짜 어려워져서 하루 끝내 못했던 경험이 많았습니다.
어쩔 수 없었다고 위안을 던지면서, '내일은 꼭 끝내자'라는 다짐을 했습니다.
되게 씁쓸하지만 건강해진 일주일이었습니다.
4L 회고 방식으로 하겠습니다.
4L 회고
Learned / Liked
-
객체지향 개념과 OOP
- 객체 지향 프로그래밍와 TS를 이용해 과제를 수행하면서 객체 설계와
- 캐릭터 클래스와 게임 메커니즘을 통해 OOP의 상속, 다형성, 캡슐화 개념을 실제로 적용해 보았습니다.
-
Path 클래스 정의 및 기본 설정
- 경로 문자열 파싱 및 초기화 과정을 통해 문자열 처리 및 초기화 방법을 배웠습니다.
- 클래스 생성자와 메소드 정의의 중요성을 느꼈습니다.
- UNIX와 Windows 스타일의 경로를 모두 지원하는 방법을 배웠습니다.
-
함수형 프로그래밍
- 불변성, 참조 투명성, 순수 함수의 개념을 학습했습니다.
- 고차함수와 함수형 프로그래밍의 패러다임을 이해하게 되었습니다.
-
단위 테스트
- Jest와 Mocha를 비교하며 적절한 테스트 도구를 선택하는 법을 배웠습니다.
- 테스트 코드 작성의 중요성과 테스트를 통해 신뢰성을 올려 코드 구현부터 유지/보수에 용이하다는 것을 알았습니다.
Lacked
-
문제 해결 접근법
- 어려운 문제를 해결하는 데 있어서 체계적인 접근이 부족했습니다.
객체지향 보드게임을 구현하면서 복잡한 로직을 다루는 데 어려움을 느꼈습니다.
- 문제를 완벽하게 해결하지 못하는 경우가 많았습니다.
Path 클래스의 경로 파싱과 같이 복잡한 기능을 구현할 때 예외 상황을 놓치는 등의 섬세함이 떨어졌습니다.
-
실패의 연속
- 하루 내에 문제를 끝내지 못하는 경우가 많았습니다.
함수형 프로그래밍 과제를 수행할 때, 각 함수의 불변성과 참조 투명성을 유지하면서 구현하는 데 많은 시간이 소요되었습니다.
Longed for
-
문제 해결 방법론
- 보다 체계적인 문제 해결 방법을 다시 복습하고 요구사항을 더 자세히 작성하겠습니다.
복잡한 로직을 다룰 때 구조적인 접근법과 설계를 통해 문제를 해결해보겠습니다.
-
CS 지식 추가 학습 및 연습
- 문제 해결 능력을 높이기 위해 추가적인 학습과 연습이 필요합니다.
OOP, 메모리 관리, 운영체제, 쓰레드 등