티스토리 뷰
코드란 요구 사항을 표현하는 언어이다.
고행(wading) 나쁜 코드에 발목이 잡혀 고생하는 것
급하게 대충 짜고 나중에 정리하겠다고 생각하지만, 항상 미루게 된다.
나쁜 코드를 짜면 안 되는 이유
1. 개발 속도를 저하시킨다.
즉 팀의 생산성을 해친다.
2. 관리자 말을 그대로 따르는 건 전문가답지 못하다.
클린 코드란?
전문가들이 생각하는 클린 코드
비야네: 우아하고 효율적이며 한 가지를 잘하는 코드.
그래디: 가독성 강조. 명쾌해야 한다.
Big 데이브: 단순히 가독성이 좋은 게 아닌 다른 사람이 고치기 쉬운 코드.
마이클: 주의 깊게 작성한 코드
론: (거의 모든 언어로 코드를 구현, 신중히 고려할 가치가 있음) 중복 피하기, 한 기능만 수행하기, 제대로 표현하기, 작게 추상화하기
워드: 짐작한 대로 돌아가는 코드
저자와 동료들(오브젝트 멘토들)이 생각하는 클린 코드
1. 누군가 읽을 것임을 명심해야 한다.
-새 코드를 짜면서 끊임없이 기존 코드를 읽는다. 그러므로 읽기 쉽게 만들면 짜기도 쉽다.
2. 항상 깨끗하게 유지해야 한다.
캠프장은 처음 왔을 때보다 더 깨끗하게 해 놓고 떠나라
-보이 스카우트 원칙-
-꾸준히 조금씩 개선하면 한 번에 많은 코드를 정리하는 데 한번에 많은 시간과 노력을 쏟을 필요가 없다. 지속적인 개선이야말로 전문가 정신의 본질
읽으면서 생각한 것들
저자는 개발자가 급하게 코드를 작성하다 보니 나쁜 코드를 작성하게 되고, 나쁜 코드는 또 다른 나쁜 코드를 작성하게 되는 원인이 된다고 말한다.
매우 공감이 가는 말이다. 프론트엔드 스타트업 트랙과정을 수강하면서 프로젝트 때마다 급하다 보니 나중에 정리하자면서 매번 의식의 흐름대로 코드를 작성하다가 다시 들여다보지도 않아서 너무 찔린다.ㅋㅋㅋㅋㅋㅋㅋ....서문이나 추천사에서 앞으로 계속 찔릴 거고 기분 나빠질 거라더니 첫 장부터 엄청나게 찔리는 내용이다ㅠㅠ..
깨끗한 코드가 무엇인지 정의하는 부분에서 추상화라는 말이 계속 반복되던데, 어떤 걸 뜻하는 건지 잘 모르겠다. 내가 놓친 부분이 있나? 다음에 한 번 더 읽을 때 이 부분에 대해 찾아보면서 읽어야겠다.