시간 = 자원 = 돈
처음엔 클린했지만 기존 코드에 기능을 추가하는 상황이라면? 자칫 잘못하면 지뢰코드를 만들어 버릴 수 있다.
흐름 파악이 어렵고 도메인 맥락 표현이 안 되어 동료에게 물어봐야 알 수 있는 코드
원하는 로직을 빠르게 찾으려면?
흩뿌려져 있는 코드는 파악도 한 번에 안되고 버그 발생 위험도 높다.
but 무조건 뭉치기만 한다면?
=> 오히려 어려워진 코드파악. 커스텀훅의 안티패턴
뭉치면 쾌적 => 당장 몰라도 되는 디테일
뭉치면 답답 => 코드 파악에 필수적인 핵심 정보
=> 핵심 데이터는 밖에서 전달, 나머지는 뭉친다.
어떻게 해야 할지 하나하나 명령하기
읽는데 오래걸리고 재사용하기 어렵다는 단점
No. 두 방법 모두 유동적으로 사용하여야 한다.
중요 포인트가 모두 담겨 있지 않은 함수명 => 위험
기능 추가 시 함수는 더욱 잡탕이 되어버린다.
이러한 기능 추가가 반복될 시 지뢰코드가 되어버린다.
프론트엔드 코드의 추상화 : 컴포넌트, 함수
답은 없다. 상황에 따라 필요한 만큼 추상화하면 된다.
추상화 수준이 섞여 있으면 코드 파악이 어렵다.
=> 한 레벨의 코드 안에 추상화 수준이 섞여 있으면 코드 파악이 어렵다. 추상화 단계를 비슷하게 정리 추상화 수준이 높은 것끼리, 또 낮은 것끼리 모은다.
두려워하지 말고 기존 코드를 씹고 뜯고 맛보고 즐기자
그 때는 맞고 지금은 틀리다. 기능 추가 자체는 클린해도, 전체적으로는 어지러울 수 있다.
코드에 정답은 없다. 명시적으로 이야기를 하는 시간이 필요하다.
글로 적어야 명확해진다.
향후 어떤점에서 위험할 수 있는지? 어떻게 개선할 수 있는지?
토스ㅣSLASH 21 - 실무에서 바로 쓰는 Frontend Clean Code
https://youtu.be/edWbHp_k_9Y
개발을 시작한지 얼마 되지 않은 나에게 어떻게 보면 먼 얘기처럼 들릴 수 있는 이야기이지만 내가 목표로 하는 함께 일하고 싶은 개발자, 좋은 코드를 만들고 싶은 개발자가 되기 위해서는 절대 놓칠 수 없는 내용이기에 기록해두고 두고두고 보려고 한다💥💥💥