Clean Code 1. 깨끗한 코드

1 minute read

목차


들어가면서

  • 프로그램에 기능을 추가, 수정을 위해 코드의 지속적인 관리가 필요
  • 깨끗한 코드를 유지하려면 장인 정신이 필요
    • 첫째, 장인에게 필요한 원칙, 패턴, 기법, 경험이라는 지식을 습득
    • 둘째, 열심히 일하고 연습해 지식을 몸과 마음으로 체득

나쁜 코드

  • 커다란 인기를 끌었던 제품이 나쁜 코드 탓에 회사가 망하는 경우가 있었다.
  • 우리 모두는 코드를 짜면서 나중에 손보겠다고 생각한 경험이 있다.
    • 하지만 나중은 결코 오지 않는다. (르블랑의 법칙)
  • 나쁜코드 -> 개발 속도 하락, 또 다른 나쁜코드를 야기 -> 재설계 요구
  • 프로그래머 스스로 전문가 다워야 한다.
    • 바쁜 일정 때문에 나쁜 코드를 짰다?
    • 일정 맞추길 요구하는건 관리자의 책임이고, 좋은 코드를 사수하는것이 프로그래머의 책임이다.
  • 깨끗한 코드를 유지하는 습관은 비용을 절감하고 빨리가기 위한 유일한 방법

깨끗한 코드

  • 비야네 스트롭스트룹 (C++ 창시자)

    간단한 논리, 낮은 의존성, 명백한 전략, 원칙에 기반한 최적화. 깨끗한 코드는 한가지에 집중. 나쁜코드는 여러가지를 하려다 목적이 흐려짐.

  • 그래디 부치

    가독성이 좋은 코드를 강조. 문제에 따른 명백한 해법.

  • 데이브 토마스

    다른사람이 고치기 쉬운 코드. TDD (테스트 주도 개발) 강조.

  • 마이클 페더스

    시간을 들여 깔끔하고 단정하게 정리된 코드. 주의를 기울인 코드.

  • 론 제프리스

    중복이 없는 코드. 표현력이 좋은 코드. 작게 추상화.

  • 위드 커닝햄

    읽으면서 짐작한대로 돌아가는 코드.

깨끗한 코드를 작성하는 방법

  • 우리는 저자다
    • 코드를 읽는 사람이 독자라고 생각하고 읽기 쉬운 코드를 짜야 한다.
  • 보이스카우트 규칙

    캠프장을 처음 왔을때보다 더 깨끗하게 해놓고 떠나라.

  • 끊임없는 연습 필요

    과제

  • 본인이 작성한 코드 중 나쁜 코드와 깨끗한 코드 하나씩 찾기
    과제 코드

Leave a comment