2022.2.22~3 (TUE~WEN)
지난 챕터에 이어서, 이름 짓기의 연장선 같다.
하나의 함수에 하나의 기능만 맡도록 해서, 이름을 간결하고 명확하게 짓도록 해보자.
아는데, 그게 참 어렵네요
추상화 수준의 통일
TOSS SLASH 21
에도 나왔던 내용이다.
나는 프론트엔드 개발자니, 리액트 코드로 예시를 들어본다.
하나의 컴포넌트도 각기 다른 추상화를 가지도록 할 수 있다.
만들고자 하는 컴포넌트는 다음과 같다.
낮은 추상화
<CustomButton text="인사" onClick={handleClick} />
중간 추상화
<CustomButton onClick={handleClick}/>
높은 추상화
<CustomButton />
같은 역할을 하는 컴포넌트지만, 내가 노출시키고자 하는 부분은 다르게 나타낼 수 있다.
SLASH 21 클린코드 발표자 분 께서도 말씀하셨듯이, 정답은 없다. 상황에 맞게 사용하면 될 뿐.
부수효과를 일으키지 마라.
최근 함수형 프로그래밍 강의를 들어보았는데, 참 괜찮은 것 같다.
내 짧은 식견으로 부수효과를 일으키지 않는 노력의 장점은 다음과 같다.
인자로 넘긴 값을 실제로 변형하지 않는다. 따라서 원본이 변했는지에 대해서 걱정할 필요가 없다.(실제로 새로운 값을 만들어서 반환함)
걱정할 필요가 없다 -> 예외적인 상황이 발생할 확률이 낮아진다...
나머지 장점은... 아래의 강의에서 친절히 가르쳐 주실 것이다.
TMI) 재밌어서 후속강의도 다 질러버림
함수 부분은 한 번 더 읽어보기...!
#노마드코더 #북클럽 #노개북