블로그
전체 42025. 03. 28.
0
[워밍업-백엔드3기] Practical Test 2주차와 워밍업 완주 회고
테스트 코드의 목적을 이해하려는 목표로 워밍업을 완주했다. 🔢 테스트코드의 두번째 학습Practical Testing: 실용적인 테스트 가이드2주차 새롭게 배운 내용Layered Architecture에서 레이어별 역할은 나눠져야 한다. 테스트도 마찬가지Mock 을 활용해서 테스트 하려는 클래스에 집중할 수 있다.Mock/Spy 의 차이실제 프로세스를 신뢰할 수 있도록 Mock과 실제 객체의 적당한 활용이 필요Test code는 결국 문서다.테스트는 독립적이고 완전히 제어할 수 있어야한다.@ParameterizedTest 와 @DynamicTest 를 활용한 시나리오 멀티 테스팅 🤔 워밍업 4주차 회고라이브 코딩을 따라가며, 필요하면 스스로 TDD 절차에 따라서 테스트 코드를 작성하기도 하였다.단순히 Junit과 Mockito 의 사용법을 이해하는 과정이 아니라,어떤 목적으로 테스트 코드를 작성하고 이것을 협업 관점을 고려하며 무엇을 조심해야하는지 배울 수 있었다. Readable Code 와 Practical Test 두 강의를 묶어서 워밍업 플랜이 나왔을 때는 의아했다."테스트 코드랑 클린 코드랑 무슨 관계지?" 강의가 끝나고 깨달은 것은 구현하는 코드도 테스트하는 코드도 모두 문서다.팀에서 함께 보며 누구나 쉽게 읽을 수 있어야 한다. 라이브 코딩이지만 스킵할 수 있는 장면은 없었다.중간 중간 많은 꿀팁과 좋은 개발자로 성장하기 위한 이야기들을 해주셨다. 워밍업 클럽을 통해 평소보다 2배는 많은 양을 빠르게 학습 할 수 있었고,라이브 중간점검을 통해서, 다른 사람들과의 코드 공유 뿐만아니라 가치있는 이야기들을 들을 수 있었다.앞으로도 박우빈님 강의와 워밍업 클럽을 들을 기회가 생긴다면 또 참여할 것이다.
2025. 03. 23.
0
[워밍업-백엔드3기] Practical Test 1주차 회고
테스트 코드의 중요성을 느끼고, TDD 라는 개념은 알고 있지만내가 정말 테스트 코드를 효율적으로 작성할 수 있나? 라는 의문으로 학습을 시작했다. 🔢 테스트코드의 첫번째 학습Practical Testing: 실용적인 테스트 가이드1주차 새롭게 배운 내용TDD 를 활용하면 느리지만 안정적인 코드 클라이언트 관점에서 피드백을 줄 수 있다.Red > Green > Blue경계값 테스트중간값 보다는 경계값 테스트를 진행한다.@SpringBootTest 와 @DataJpaTest 의 차이트랜잭션 유무의 차이로, 사용하는 것에 대해 명확히 이해하고 선택해야 한다.예외 위치에 따라 목적과 사용이 다르다.하나의 동작에서 Service 에서 예외와 Entity 에서의 예외는 다른 역할을 수행한다. 🤔 워밍업 3주차 회고직접 레이어 단계별로 코드를 작성하며, TDD 를 실습할 수 있다.메서드를 추가함과 동시에 Red>Green>Blue 를 거쳐서 리팩토링을 한다.처음에는 이게 맞나? 싶지만, 빠르게 컴파일 오류를 잡아내어 기능과 역할에 집중하며 메서드를 설계할 수 있다."클린 코드에서는 많이 봐야겠다." 라고 느꼈다면,TDD 는 "많이 써봐야 겠다"라고 느낀다. 명확한 장점이 사용할 때마다 느껴진다. 워밍업 클럽의 75%가 넘었다.그냥 완강하는 것 뿐 아니라, 배운 내용을 나의 것으로 만드는 미션을 진행하여 습득량이 다르다고 느꼈다. 혼자 공부하는 것의 막막함을 느낀다면, 워밍업 클럽을 매우 강추
백엔드
・
TDD
・
PracticalTest
・
박우빈님강의
・
워밍업클럽
2025. 03. 16.
0
[워밍업-백엔드3기] ReadableCode 2주차 회고
ReadableCode 를 완강했다.실습 과제로 마무리하며, 클린 코드는 많이 보고 연습하며 습득해야할 필요성을 느꼈다. 🔢 클린코드의 두번째 학습Readable Code: 읽기 좋은 코드를 작성하는 사고법 - 박우빈2주차 새롭게 배운 내용일급 컬렉션 단 하나의 컬렉션 필드를 가지며, 책임을 새로 가질 수 있는 객체이다.Enum상태와 행위를 함께 관리할 수 있는 추상화된 객체이다.Early Return 과 부정문 관리부정문은 두번의 사고를 거쳐야 한다.else if 는 이전 과정을 모두 기억해야 하는 장기 사고적인 부분이다.예외 관리예외는 비싸다. 예외는 개발자를 위한 정보이다.문맥을 활용하여 의도를 전달하자메서드의 순서, 패키지 또한 의도이다.Optional 을 조심해서 사용하자. 클린 코드 사고를 기반으로 결정하는 코드 센스 능력을 기르자 🤔 2주차 회고리팩토링 실습을 진행하며, 머리로 이해한 개념을 직접 적용하는 것의 어려움을 느꼈다.마치 악기를 배우듯이 꾸준히 내용을 확인하고 적용하며 습득해야하는 습관 과제 같았다. 미션 제출과 중간 라이브를 통해 다른 사람들의 리팩토링을 보는 시간을 가질 수 있었다.동일한 바탕으로 다양한 접근 방식을 확인할 수 있었다.코드에 정답은 없다. 클린 코드를 만들 수 있는 센스를 몸에 익히고 큰 그림을 보며 코드를 짜는 능력을 길러야겠다.'완벽한 코드는 없다. 그 당시의 최선일 뿐!'클린 코드 학습을 고민하는 분이 있다면 박우빈님 강의를 추천한다!
백엔드
・
클린코드
・
ReadableCode
・
박우빈님강의
・
워밍업클럽
2025. 03. 09.
0
[워밍업-백엔드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주만 들었을 뿐인데, 코테를 연습하면서도 클린코드를 고민하게 된다.클린 코드 학습을 고민하는 분이 있다면 박우빈님 강의를 추천한다!
백엔드
・
클린코드
・
ReadableCode
・
박우빈님강의
・
워밍업클럽