블로그
전체 22025. 03. 17.
0
[인프런 워밍업 클럽 3기] BE 클린코드&테스트 - 2주차 발자국
✍ 블로그 요약: 읽기 좋은 코드 & 테스트 코드 정리📌 Readable Code: 가독성 높은 코드 작성법1⃣ 주석 최소화주석이 많으면 코드가 비즈니스 요구사항을 제대로 반영하지 못한 것.코드로 표현할 수 없는 의사 결정 기록만 남기기.2⃣ 변수 & 메서드 정렬 원칙변수: 사용 순서대로 배치.메서드: 공개 메서드 → 상태 변경 → 판별 → 조회 순으로 정렬.3⃣ 코드 리팩토링 & 가독성 향상Enum 활용해 의미 전달 (ex: GameStatus.IN_PROGRESS).객체 역할 분리 (ex: GameBoard = 비즈니스 로직, MineSweeper = 컨트롤러).4⃣ 패키지 구조 개선패키지는 문맥을 제공하는 역할.유지보수를 고려해 적절한 수준으로 나누고 팀원과 협의.5⃣ IDE 도구 활용코드 자동 정렬 (Option + Command + L).코드 품질 유지 도구 (SonarCube, lint, .editorconfig).6⃣ 오버 엔지니어링 방지불필요한 추상화/인터페이스 남발 금지.하나뿐인 구현체가 있다면 인터페이스 생략 가능.7⃣ 실무에서 코드 품질 vs 빠른 개발완벽한 코드보다 실용적인 코드가 중요.TODO 주석을 활용해 미래 리팩토링 가이드 남기기.8⃣ 결론: 완벽한 코드는 없다클린 코드도 적절한 수준에서 적용.도메인 지식을 늘리고 비즈니스 요구사항을 이해하는 것이 핵심.📌 Practical Testing: 테스트 코드의 중요성1⃣ 왜 테스트 코드가 중요한가?자동화된 테스트로 빠르고 정확한 피드백 제공.수동 테스트는 비효율적이며 오류 가능성이 높음.2⃣ JUnit5 & AssertJ 활용한 자동화 테스트✅ assertThat을 활용해 검증 코드 작성 → 일관성과 유지보수 용이.3⃣ 테스트 케이스 설계경계값 테스트 등 다양한 시나리오를 고려한 테스트 설계 필요.🔥 미션 & 한주 회고📍 StudyCafe 리팩토링 미션만족스러운 코드 작성 못함 → 마감 기한보다 늦게 제출.피드백을 통해 개선점 발견 → 다시 리팩토링하여 업데이트 예정.📍 한주 회고읽기 좋은 코드 강의 종료 → 테스트 코드 학습 시작.이전 회사에서 테스트 코드를 작성할 기회가 없었음 → 이번 기회에 제대로 배우기!Day 11 미션에서는 코드 리뷰까지 도전!🚀 목표: 실무에서도 활용할 수 있는 코드 품질 & 테스트 코드 역량 기르기!
2025. 03. 09.
0
인프런 워밍업 클럽 스터디 3길 - 백엔드 클린 코드, 테스트 코드 1주차 발자국
강의,메인 키워드는 "추상화"입니다. 우리가 글을 읽고 쓸 때, 잘 읽히고 이해가 되는 글을 좋은 글이라고 합니다. 프로그래밍에서도 동일하다는 것을 '추상화' 라는 개념을 통해 할 수 있습니다. 저는 그 동안 제가 이해할 수 있는 코드를 작성했다면 이번 강의를 통해서 클린 코드는 잘 읽히는 코드 작성은 어떻게 하는지 알게되었습니다. 제가 코드를 열어봐야만 이해할 수 있는 코드가 아닌 쭉 읽으면 이해가 되는 코드를 작성하는데 추상화라는 개념이 중요하고 그것이 무엇인지 코드 수정을 통해 익힐 수 있었습니다. 강의에 대한 회고,강의에서 제공한 코드 외에는 제가 1주차 통해 배운 내용을 적용해보지 못했다는 아쉬움이 나왔습니다. 이런 읽히는 코드를 작성하기 위해서 많은 연습과 시간이 필요하다고 생각합니다. 2주차에는 제가 그 동안 해왔던 프로젝트의 코드를 열어 클린코드 작성을 해볼 계획입니다. 미션,확실히 1주차라 그런지 미션의 난이도나 들이는 시간을 적었습니다. 강의 속 코드를 고쳐가는 것을 따라하고 이해할 수 있다면, 충분히 할 수 있었습니다. '추상화'라는 개념을 잊지않고 무엇인지 계속 고민하면서 코드 수정을 통해 익히려고 했습니다. 첫번째 미션은 무난하게 진행했고, 두번째 미션은 추상화를 코드에 접목시키는 부분에서 많이 연습해보지 못해서 수정한 코드에 대한 확신이 없었습니다. 그래서 ChatGPT에게 물어가면서 어떻게 하면 더 읽기 좋은 코드로 만들 수 있을지 또 Order에 대해서 어떤 식으로 코드를 작성하면 좋을지까지 고민하면서 미션을 수행하였습니다. 미션에 대한 회고,확실히 이름을 정하는 것에 대해서 어려움이 있습니다. 이 부분 좀 더 보강할 수 있도록 연습을 더 해봐야겠습니다 🙂2주차도 모두 화이팅!
백엔드
・
워밍업클럽스터디3기
・
백엔드
・
클린코드