📚TIL
타인의 코드를 본다는 것
오늘은 어제 구현했던 자료구조를 가지고 팀원들과 각자 구현한 내용을 비교하며 리뷰했다. 타인의 코드를 본다는 것은 타인의 사고 과정뿐만 아니라 기술적 차이까지 살펴볼 수 있었다. 어제도 말했지만 어제 구현한 과제는 테스트에 집중하다 보니 이도 저도 아닌 코드가 되어버렸는데, 오늘 팀원들의 코드를 보며 객체지향적이고, 클린 코드, 코드 설계 관점까지 살펴볼 수 있었다.
✅ 인터페이스를 활용한 추상화, 제네릭 사용
내 코드의 문제는 링크드 리스트를 구현하는 데 도메인에 의존되어 있었다. 그러다 보니 링크드 리스트 기능뿐만 아니라 특정 도메인의 로직 (출력 문구, 삭제 등)이 코드 안에 들어있어 자료 구조를 재활용할 수 없었다. 하지만 팀원의 코드를 보니 LinkedList의 Interface을 통해 추상화하였고 이를 상속받아 구현하니 확장이 쉽게 가능했다. 제네릭도 이와 마찬가지였다. 구현 중 타입을 일반화해야지! 란 생각을 했지만 하지 못했었는데 팀원 코드에서 제네릭 사용을 보고 반성했다.
✅ 자바 기본 API 기능 활용
현재 자바에 익숙하지 못하다. 여러 메서드를 알지 못하다 보니 객체가 null 인지 체크할 때 단순하게 object == null으로 비교하였다. 이 비교 연산을 메서드로 따로 만들어 가독성을 높이려 했는데, 팀원의 코드를 보니 Objects.isNull() 메서드를 사용해서 구현했다. 또한 팀원 코드를 보며 @SuppressWaring 어노테이션에 대해서도 알 수 있었다. 직접 메서드를 구현하는 것도 의미가 있겠지만, 앞으로는 내장 메서드, API를 잘 활용해야겠다는 생각이 든다. 좋은 기능들은 책으로만 본다고 익혀지지 않으니 앞으로도 팀원들의 코드를 보면서 배우고, 타인의 코드를 더 많이 읽어야겠다.
깨달음
타인의 코드를 본다는 것은 사고의 확장이다.
스터디
저번 주 번개 모임에서 책 추천을 하나 했다. 농담으로 책 구입하시고 연락 주시면 스터디 같이해요라고 이야기했는데 몇 분이 책 구입했다고 연락이 왔다. 아니?? 이런 실행력 가진 사람들과는 스터디를 해야한다. 하자! 부담없이 소소하고 즐겁게!
스터디 이름 : 쿼카-스쿼드 , 쿼카가 귀여워서 그만
👍 Keep
- 팀원 코드 리뷰와 점검
- 스터디 계획과 시작
🔥Problem
- 시간을 잘게 쪼개서 하자
🚒 Try
- 꾸준하고 건강한 코드 리뷰 지속하기
- 내 코드에 부족한 점 반영하기 ⭐️
'📝 회고 > ✅ 22년 회고' 카테고리의 다른 글
[주간 회고] 22.01. 2주차 ☕️ (0) | 2022.01.16 |
---|---|
[일일 회고] 22.01.13.목 - 초보의 OOP 설계와 구현기(다형성과 추상화, 정적 팩터리 메서드 적용) (0) | 2022.01.13 |
[일일 회고] 22.01.10.월 - 테스트 코드, 다 좋은 게 아니었어.. (0) | 2022.01.10 |
[주간 회고] 22.01. 1주차 🌿 🍝 (1) | 2022.01.09 |
[일일 회고] 22.01.07.금 - 리눅스 사용자 & 계정 설정, 팀원과의 작별 (0) | 2022.01.07 |
댓글