[워밍업-백엔드3기] ReadableCode 1주차 회고
클린 코드와 테스트 코드 작성 능력 향상을 위해 워밍업 클럽을 신청했다. 👋혼자하는 것보다는 빠르게 성장하지 않을까 하는 기대감을 가졌다.결과적으로 그냥 인프런을 수강할 때보다 두 배로 강의를 집중해서 빠르게 들을 수 있었다.개인적으로 TIL 을 메모하려 했고, 미션을 통해 복습을 하니 강의를 습득하는걸 체감할 수 있었다. 🔢 클린코드의 첫번째 학습Readable Code: 읽기 좋은 코드를 작성하는 사고법 - 박우빈1주차 새롭게 배운 내용추상 개념 잡기 추상 계층에 따라 어떻게 관리해야하는 지 이해하고, 클래스를 분리 할 수 있다.void 는 피한다.반환값은 테스트 코드에 도움이 된다.Early Return 과 부정문 관리부정문은 두번의 사고를 거쳐야 한다.else if 는 이전 과정을 모두 기억해야 하는 장기 사고적인 부분이다. 점진적 리팩토링다른 곳에서 참조되는 클래스를 한번에 바꾸는 것은 위험하다.의도한 예외와 예상하지 못한 예외try-catch 시, CustomException을 활용하여 예외의 경우를 나뉘어 관리한다.NPE 를 조심하자!외부에서 오는 값은 항상 의심하고 검증해야한다.Setter 는 물론이고 Getter 도 참아보자메서드를 활용해서 객체간 소통할 수 있다. getter 를 먼저 작성하지 말고 방법을 고민해본다. 클린코드를 실습과 함께 동시 진행하며, 빠르게 내용을 이해하고 습득할 수 있었다.실무 관점에서 클린코드의 목적과 어떠한 방향으로 코드를 작성해야하는지 팁을 계속 알려주셨다. 💾 클린코드 실습 미션 과 SOLID[Readable Code] 클린 코드 리팩토링 연습과 SOLID 원칙 정리클린코드 미션 제출 코드배울 때는 너무 잘 정리해주셔서 정답이 있는 듯 보이지만, 예제 코드를 직접 수정하니 주관적이고 판단하기 어려웠다.강의를 들으며 정리한 메모를 한 줄씩 읽어보고, 예제 코드를 딱 보았을 때 맘에 들지 않는 부분을 정리했다.배운 내용을 규칙처럼 적용하려 했고, 평소와 다르게 작성하려 노력했다. 저 짧은 예제 코드 하나 수정하는데 꽤 많은 시간이 들었다. 🥵제출하고 나서도 '이게 최선일까?' 라는 생각이 많이 들었고, 좋은 코드를 찾아 보라는 말이 이해가 되었다. 나의 언어로 SOLID 정리하기OCP : 개방 폐쇄 원칙 게임에 새로운 레벨이 추가된다고, 게임 로고가 바뀌지는 않는다.게임에 새로운 스테이지가 추가 된다고, 튜토리얼이 바뀌지는 않는다. 기존 코드의 변경 없이 새로운 요구사항을 반영할 수 있어야 한다. SOLID 를 이해하려면 앞으로도 몇개월이 걸릴 거라 생각했는데, 직접 정리하면서 개념을 다시 잡아보기도 하고 생각을 정리할 수 있었다. 배운 내용을 내 언어로 정리하니 기억도 잘되었다! 🧠 🤔 1주차 회고세션이나 도서 등을 참고한 적은 많지만 내용을 직접 적용해본 경험은 없는 것 같았다.클린 코드 학습은 막연하다고 생각했는데, 실시간 예제와 함께 강의를 들으니 너무 이해가 잘되었다.매일 배운 내용을 나의 언어로 메모를 남겨 내 것으로 만들기 위해 노력하고 있다.1주만 들었을 뿐인데, 코테를 연습하면서도 클린코드를 고민하게 된다.클린 코드 학습을 고민하는 분이 있다면 박우빈님 강의를 추천한다!