DAY02

  • 오늘 읽은 범위 : 챕터1: 깨끗한 코드~p10

책에서 기억하고 싶은 내용을 써보세요

  • 코드가 사라질 가능성은 없다: 코드는 요구사항을 상세히 표현하는 수단이니까!
    • 어느 수준에 이르면 코드의 도움 없이 요구사항을 상세하게 표현하기란 불가능하다.
    • 고도로 추상화된 언어나 특정 응용 분야 언어로 기술하는 명세 역시 코드!
  • 회사가 망한 원인은 바로 나쁜코드 탓이었다 1
  • 르블랑의 법칙 -나중은 결코 오지 않는다- 2
  • 나쁜코드는 개발 속도를 크게 떨어뜨린다
    • 처음에 빠르게 치고 나가다가 1~2년만에 굼벵이처럼 기어가는 팀도 많다…매번 얽히고 설킨 코드를 '해독'해서 얽히고 설킨 코드를 더한다.
  • 시간을 들여 깨끗한 코드를 만드는 노력비용을 절감하는 방법일 뿐만 아니라 전문가로서 살아남는 길
  • 나쁜코드의 위험을 이해하지 못하는 관리자 말을 그대로 따르는 행동은 전문가답지 못하다
  • 기간을 맞추는 유일한 방법은, 그러니까 빨리가는 유일한 방법은, 언제나 코드를 최대한 깨끗하게 유지하는 습관이다
  • 코드감각 - 깨끗한 코드를 작성하려면 '청결'이라는 힘겹게 습득한 감각을 활용해 자잘한 기법들을 적용하는 절제와 규율이 필요
    • 깨끗한 코드를 작성하는 프로그래머는 빈 캔버스를 우아한 작품으로 바꿔가는 화가와 같다
  • 깨끗한 코드란?
    • 비야네 스트롭스트룹3 - 우아하고 효율적인 코드를 좋아한다
      • 나쁜코드는 나쁜코드를 유혹한다! - 흔히 나쁜코드를 고치면서 오히려 더 나쁜코드를 만든다는 뜻
      • 철저한 오류처리 - 세세한 사항까지 꼼꼼하게 신경써라.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  1. 나쁜코드의 위험을 이해하지 못하는 관리자 말을 그대로 따르는 행동은 전문가답지 못하다 : 이 말이 정말 와닿는 구절이었습니다. 현직에 종사하다 보면 일정에 휘둘려, 나중을 기약하면서 일단 구현에 초점을 맞추고 코드 품질에 대해선 관심을 쏟지 못하는 상황이 많이 찾아옵니다. 그런 제 자신을 반성하게 되었으며 관리자가 일정을 중요하게 여기는 만큼 프로그래머 또한 코드품질을 높혀야 그만큼 나중에 발생할 비용을 절감하고 전문가로서 살아남는 길이라는걸 깨달았습니다
  2. '코드 감각'이라는 청결과 관련된 감각을 얼른 깨달아야 나쁜코드를 구분할 수 있고, 그 나쁜코드를 어떻게 하면 좋은코드로 바꿀 수 있는지 알 수 있다고 합니다. 아직까지는 나쁜코드를 본능적으로는 구분할 수 있지만 그게 왜 나쁜지는 정확히 모르는게 문제인 것 같습니다. 그 부분을 잘 배워나가야 할 것 같습니다

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요

  • 어떻게 하면 나쁜코드를 왜 나쁘다고 정확하게 설명할 수 있을까?
  1. 3페이지 나쁜코드 killer app으로 부터 

  2. LeBlanc's Law 

  3. 9페이지 C++ 창시자이자 The C++ Programming Language 저자