반응형
요즘 취준기간도 길어져서 시간에도 여유가 생기고 결국 취직해서도 레거시 코드를 보고 이해하거나 (연차가 쌓인다면) 리팩토링 하게 되는건 불가피하다고 생각했다.
따라서 이전에 만들어놓았던 프로젝트 코드를 보면서 어떻게 리팩터링을 해볼까 고민만 잔뜩 하다가 해당 책을 접하고 나서 좀더 적극적으로 건들수 있게되었다.
책에 대한 이야기를 하자면 책은 얇지만 작은 챕터 하나하나의 내용에 내가 고려해야되는 것들이 많아서 내용은 적지 않은 느낌이다.
당연하다고 암암리에 생각하던 것을 나와 같은 고민을 이미 이전에 여러번 해본 시니어 개발자가 짧은 글로 풀어쓴듯한 책이다.
크게 3가지의 파트로 나뉘어있는데(나름의 비유를 하자면)
- 첫번째 파트는 공구가 어떻게 작동되는지를 알려주고
- 두번째는 어떻게 사용할지를 알려준다
- 마지막에서는 자신이 얻었던 노하우를 알려주는데
아무리 읽어봐도 내 경험에 와닿는건 첫번째 파트 밖에없다ㅋㅋ 사실 이번 서버단 리팩토링에 있어서 2명 정도를 소개 받아 진행하게 되었는데 잘될지는 모르겠지만 여기서 얻은 나와 코드와의 관계(피드백)를 잘 확인해가면서* 진행을 해보려고 한다.
*p69
챕터 1을 보면서 인상깊었거나, 나에게 필요하거나, 공감했던 부분과 함께 짧은 포스팅 마무리하겠다.
04
통로 인터페이스를 이용해보면 아이디어가 생길수 있다
기존 인터페이스를 호출하는 새 인터페이스를 만들고 새 인터페이스를 이용해 구현해보자
06
결합도 제거를 할수 있으면 해라 만약 비용이 크게 느껴진다면 일단 결합도가 있는 코드끼리 가까이 두어보자
07
작은단계로 코드를 변경하고 변수 사용 직전에 초기화해보자
08,09
인자가 긴 표현식의 경우나 하드코딩된 상수라면 적당한 변수 명을 만들어서 선언해놓고 사용하자
11
비슷한 코드끼리 뭉쳐놓자
13
코드가 여러개의 조각으로 이루어져 있다고 느껴질때 하나의 더미를 만들때까지 모아보자
코드를 만들때 가장 큰 비용이 드는건 코드 작성보다는 읽고 이해하는거고 코드 정리를 하면 응집도를 높일수 있다.
실질적으로 한번에 기억해야하는 코드 상세 내용을 줄여준다
힌트
길고 반복되는 인자 목록 반복되는 코드, 반복되는 조건문, helper 에 부적절한 이름, 공유가능하고 변경 가능해진 데이터 구조
'Life' 카테고리의 다른 글
'24 1h (0) | 2024.06.24 |
---|---|
23년도 3분기 (2) | 2023.10.13 |
대학생 동아리 프로젝트에 대한 고찰 (0) | 2023.07.10 |
2302디스크조각모음 (0) | 2023.06.13 |
요즘 있던일 (3) | 2023.06.13 |