클린 코드는 원하는 로직을 빠르게 찾을 수 있는 코드
유지보수 시간의 단축
코드 파악, 디버깅, 코드 리뷰를 빠르게 할 수 있다.
같은 목적을 가진 코드는 뭉쳐 두자
| 코드 | 설명 |
|---|---|
![]() | 팝업을 조작하는 코드가 뚝뚝 떨어져 있음 |
![]() | 커스텀 훅을 사용해서 뭉치기 어떤 내용의 팝업을 띄우는지, 팝업에서 버튼을 눌렀을 때 어떤 액션을 하는지가 훅에 가려져 보이지 않음 |
![]() | 핵심 데이터(팝업 제목, 내용, 버튼 클릭 액션)만 전달받고 세부 구현은 뭉쳐 숨겨 두기 = 선언적 프로그래밍 |
하나의 일만 하는 뚜렷한 이름의 함수를 만들자
중요 포인트가 모두 담겨 있지 않은 함수명 → 코드에 대한 신뢰 하락
| 😠👎 | 😀👍 |
|---|---|
![]() | ![]() |
| 한 가지 함수에서 여러가지 일을 함 함수명에 모든 일에 대한 설명이 담겨있지 않음 | 한 가지 함수는 하나의 일만 함 함수명만 보고 무슨 일을 하는 함수인지 알 수 있음 |
핵심 개념을 필요한 만큼만 노출시키자
얼마나 추상화할 것인가?
| Lv. | |
|---|---|
| 1 | ![]() |
| 2 | ![]() |
| 3 | ![]() |