TIL (Today I Learned)
- 2022.02.22
📕 오늘 읽은 범위
- 클린코드 3장. 함수
🙂 책에서 기억하고 싶은 내용
- '함수를 만드는 첫째 규칙은 ‘작게!’다. 함수를 만드는 둘째 규칙은 ‘더 작게!’다.' (p.42)
- ‘함수는 한 가지를 해야 한다. 그 한 가지를 잘 해야 한다. 그 한 가지만을 해 야 한다.' (p.44)
- '소프트웨어를 짜는 행위는 여느 글짓기와 비슷하다. 논문이나 기사를 작성할 때 는 먼저 생각을 기록한 후 읽기 좋게 다듬는다. 초안은 대개 서투르고 어수선하므로 원하는 대로 읽힐 때까지 말을 다듬고 문장을 고치고 문단을 정리한다.' (p.61)
🤔 오늘 읽은 소감은?
이번 장에서는 여러번 함수의 볼륨 및 기능 최소화에 초점을 두고 있고 그에 따른 가독성,기능 간의 의존성 저하 등의 성능을 예시로 들어 설명하고 있다.
우리들 대다수는 실은 이미 알고있다. 코드 강좌에서, 관련 서적에서 가독성이 좋고 기능들을 분할시킨 함수를 지향하는 것은 여러번 강조되는 내용이기도 하다. 하지만 막상 실무에서 작성된 혹은 작성하고 있는 함수들은 그 지침을 잘 따르기 어려운걸까. 개발 끈이 짧은 내 경우를 생각해보면 초기에 해당 기능을 수행하는 스크립트를 작성할 때, 머릿 속으로 구상한 설계들을 타이핑하며 풀어나가다가 보면 단순히 저장용으로 쓰려는 str, list, vo 등의 모호한 변수들이 자주 등장하고 문제를 풀어나가기 위한 과정들을 줄줄이 작성하는, 기능 중심이 아닌 설계 스토리 중심으로 짜는 버릇이 있다보니 일단 함수는 길어지고 난잡해지기 마련이다. 물론 작동은 하겠지만, 작성 당시 코드 작성자의 세계관을 이해하지 못하는 협업자나 미래의 작성자 본인은 추후 유지보수를 할때면 저자의 의도를 파악하느라 고군분투하게 될 것이다. 하지만 책에서도 언급했듯이 초안은 대게 서투르고 어수선하기에 작성한 코드를 계속 리팩토링하면서 더 나은 코드로 만들려는 노력이 필요하다. 마냥 쉬운 일은 아니고 귀찮고 고된 일 일수도 있다. 하지만 한 방울이라도 짜내려는 얼마 안 남은 치약처럼 우리의 코드도 쥐어 짜낼 수 있을 만큼 지적 노동을 발휘한다면, 우리의 개발 실력도 한걸음 더 나아 갈 수 있지 않을까 기대해 본다.
'도서 > 클린코드_#bookclub#TIL' 카테고리의 다른 글
클린 코드 #11일차 (0) | 2022.03.25 |
---|---|
클린 코드 #8일차 (0) | 2022.03.25 |
클린 코드 #4일차 (0) | 2022.03.25 |
클린 코드 #3일차 (0) | 2022.03.25 |
클린 코드 #2일차 (0) | 2022.03.24 |