본문 바로가기
📝 회고/✅ 22년 회고

[일일 회고] 22.01.11.화 - 타인의 코드를 본다는 것

by kukim 2022. 1. 11.

📚TIL

타인의 코드를 본다는 것

오늘은 어제 구현했던 자료구조를 가지고 팀원들과 각자 구현한 내용을 비교하며 리뷰했다. 타인의 코드를 본다는 것은 타인의 사고 과정뿐만 아니라 기술적 차이까지 살펴볼 수 있었다. 어제도 말했지만 어제 구현한 과제는 테스트에 집중하다 보니 이도 저도 아닌 코드가 되어버렸는데, 오늘 팀원들의 코드를 보며 객체지향적이고, 클린 코드, 코드 설계 관점까지 살펴볼 수 있었다.

 

✅  인터페이스를 활용한 추상화, 제네릭 사용

내 코드의 문제는 링크드 리스트를 구현하는 데 도메인에 의존되어 있었다. 그러다 보니 링크드 리스트 기능뿐만 아니라 특정 도메인의 로직 (출력 문구, 삭제 등)이 코드 안에 들어있어 자료 구조를 재활용할 수 없었다. 하지만 팀원의 코드를 보니 LinkedList의 Interface을 통해 추상화하였고 이를 상속받아 구현하니 확장이 쉽게 가능했다. 제네릭도 이와 마찬가지였다. 구현 중 타입을 일반화해야지! 란 생각을 했지만 하지 못했었는데 팀원 코드에서 제네릭 사용을 보고 반성했다.

 

✅  자바 기본 API 기능 활용

현재 자바에 익숙하지 못하다. 여러 메서드를 알지 못하다 보니 객체가 null 인지 체크할 때 단순하게 object == null으로 비교하였다. 이 비교 연산을 메서드로 따로 만들어 가독성을 높이려 했는데, 팀원의 코드를 보니 Objects.isNull() 메서드를 사용해서 구현했다. 또한 팀원 코드를 보며 @SuppressWaring 어노테이션에 대해서도 알 수 있었다. 직접 메서드를 구현하는 것도 의미가 있겠지만, 앞으로는 내장 메서드, API를 잘 활용해야겠다는 생각이 든다. 좋은 기능들은 책으로만 본다고 익혀지지 않으니 앞으로도 팀원들의 코드를 보면서 배우고, 타인의 코드를 더 많이 읽어야겠다.

 

깨달음

타인의 코드를 본다는 것은 사고의 확장이다.

스터디

저번 주 번개 모임에서 책 추천을 하나 했다. 농담으로 책 구입하시고 연락 주시면 스터디 같이해요라고 이야기했는데 몇 분이 책 구입했다고 연락이 왔다. 아니?? 이런 실행력 가진 사람들과는 스터디를 해야한다. 하자! 부담없이 소소하고 즐겁게! 

스터디 이름 : 쿼카-스쿼드 , 쿼카가 귀여워서 그만


👍 Keep

  • 팀원 코드 리뷰와 점검
  • 스터디 계획과 시작

🔥Problem

  • 시간을 잘게 쪼개서 하자

🚒 Try

  • 꾸준하고 건강한 코드 리뷰 지속하기
  • 내 코드에 부족한 점 반영하기 ⭐️

댓글