1 분 소요

깨끗한 코드

이 책을 읽고 있다면 이유는 두 가지다. 첫째, 프로그래머라서. 둘째, 더 나은 프로그래머가 되려고.

코드가 존재하리라

기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업, 바로 이것이 프로그래밍이다.

나쁜 코드

우리 모두는 대충 짠 프로그램이 돌아가는 사실에 안도감을 느끼며 그래도 안돌아가는 프로그램보다 돌아가는 쓰레기가 좋다고 스스로를 위로한 경험이 있다. 다시 돌아와 나중에 정리하겠다고 다짐했었다. 물론 나중은 결코 오지 않는다.

나쁜 코드로 치르는 대가

나쁜 코드가 쌓일수록 팀 생산성은 떨어진다. 생산성을 증가시키려는 희망을 품고 프로젝트에 인력을 추가로 투입한다. 하지만 새 인력은 시스템 설계에 대한 조예가 싶지 않다. 게다가 새 인력과 팀은 생산성을 높이야 한다는 극심한 압력에 시달린다. 그래서 결국은 나쁜 코드를 더 많이 양산한다.

태도

나쁜 코드의 위험을 이해하지 못하는 관리자 말을 그대로 따르는 행동은 전문가 답지 못하다.

원초적 난제

기한을 맞추는 유일한 방법은, 그러니까 빨리 가는 유일한 방법은, 언제나 코드를 최대한 깨끗하게 유지하는 습관이다.

깨끗한 코드란?

  • 한가지를 제대로 한다.
  • 세세한 사항까지 꼼꼼하게 처리한다.
  • 각 함수와 클래스와 모듈은 주변 상황에 현혹되거나 오염되지 않은 채 한길만 걷는다.
  • 코드를 읽는 사람에게 프로그래머가 단호하다는 인상을 줘야 한다.
  • 다른 사람이 고치기 쉽다고 단언한다.
  • 큰 코드보다 작은 코드에 가치를 둔다.
  • 인간이 읽기 좋은 코드를 작성한다.
  • 중복을 피하라. 한 기능만 수행하라. 제대로 표현하라. 작게 추상화하라.
  • “코드가 그 문제를 풀기 위한 언어처럼 보인다면” 아름다운 코드라 말한다.

우리들의 생각

이 책은 꺠끗한 변수 이름, 꺠끗한 함수, 깨끗한 클래스를 만드는 방법을 소개한다.
이 책은 우리 오브젝트 멘토 진영이 생각하는 깨끗한 코드를 설명한다.

우리는 저자다

저자에게는 독자와 잘 소통할 책임도 있다.

보이스카우트 규칙

캠프장을 청므 왔을 때보다 더 깨끗하게 해놓고 떠나라

지속적인 개선이야말로 전문가 정신의 본질이다.

결론

이 책을 읽는다고 뛰어난 프로그래머가 된다는 보장은 없다. ‘코드 감각’을 확실히 얻는다는 보장도 없다.
단지 뛰어난 프로그래머가 생각하는 방식과 그들이 사용하는 기술과 기교와 도구를 소개할 뿐이다.

참조

태그:

카테고리:

업데이트:

댓글남기기