0115
그리드 컴포넌트 리팩터링 좋은 코드 체크리스트
- [ ] 코드가 한 번에 가지고 있는 맥락이 적은가?
가독성을 지키려면 코드가 한 번에 가지고 있는 맥락이 적어야 해요. 하나의 컴포넌트가 가지고 있는 맥락이 다양하면 컴포넌트의 역할을 한눈에 파악하기 어려워져요.
- [ ] 동시에 실행되지 않는 코드가 하나의 함수 또는 컴포넌트에 존재하는가? 하나의 코드 덩어리에는 하나의 맥락만
- [ ]
- [ ] 추상화: 구현 상세를 지나치게 드러내고 있지 않은가? 북쪽을 바라보았을 때 한 번의 회전을 360등분한 각의 90배만큼 북반구에서 해시계의 바늘이 돌아가는 방향으로 돌아서, 동물이 육상에서 다리를 이용해 움직이는 가장 빠른 방법보다 느린, 신체를 한 지점에서 다른 지점으로 옮겨가는 행위를 10번 반복해라 == 왼쪽으로 10걸음 걸어라
- [ ] 성능: 특정한 상태 값이 업데이트되었을 때 최소한의 부분이 리렌더링되도록 설계되었는가?
- [ ] 매직 넘버(적나라한 숫자값)를 방치하지 않고 목적에 따른 이름을 붙여주었는가?
- [ ] 시점 이동 줄이기:
- [ ] 변수명, 파라미터, 반환값에서 드러나지 않는 숨겨진 로직이 없는가? = 책임 축소, 필요한 수준까지 적절한 분리 및 추상화 = 이름은 그 변수/함수/컴포넌트가 하는 일을 다 담고 있어야 한다
- [ ] 단순히 종류가 같기 때문에 한 곳에서 통째로 관리하도록 코드를 나누고 있는가?