6 분 소요

두 번째 읽는 《클린코드》다. 지난 번에 읽을 때는 ‘개발자로서 이 정도는 읽어야지’라는 마음으로 읽었었다. 이번에는 《클린코드》를 통해 실제로 내 코드가 더 깨끗해지는 마음으로 읽기 시작했다. 부디 끝까지 잘 읽으면서 공부를 계속할 수 있기를.
개발자가 공부해야할 내용들은 엄청나게 많다. 그럼에도 새로운 것을 배우는 것보다 다시 한 번 깨끗한 코드를 ‘잘’ 짜는 방법을 공부하는 이유는, 언제 어디서나 코드를 써야 하기 때문이다. 기본이 되는 기술을 잘 익혀놔야 앞으로의 업무에도 지속적으로 효율을 더할 수 있기 때문이다.
개발/운영 업무는 늘 바쁘다. 그리고 새로운 일들을 더 해야만 하는 상황들이 온다. 새로운 기술들을 검토해야 하고, 기술적으로 더 전문성을 갖추기 위해 학습해야 하고, 서비스 기획도 관심을 가지고 고민해야 한다. 이런 상황에서 깨끗한 코드를 짜기 위해 많은 시간을 들여야 하는 것이 업무를 가중한다는 생각도 들긴하지만, 결국 그런 핑계의 희생자는 바로 나다. 다시 그 코드를 들여다 볼 나를 위해서라도 깨끗한 코드를 짜기 위해 노력해야 한다.


📆TIL(Today I Learned) 날짜

2022.03.07

📑오늘 읽은 범위

들어가면서 ~ 1.깨끗한 코드

✍🏻책에서 기억하고 싶은 내용

다시 돌아와 나중에 정리하겠다고 다짐했었다. 물론 그 때 그 시절 우리는 르블랑의 법칙을 몰랐다. 나중은 결코 오지 않는다.

나쁜 코드가 쌓일수록 팀 생산성은 떨어진다.

시간을 들여 깨끗한 코드를 만드는 노력이 비용을 절감하는 방법일 뿐만 아니라 전문가로서 살아남는 길이라는 사실을 인정하리라.

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

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

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

체크아웃할 때보다 좀 더 깨끗한 코드를 체크인한다면 코드는 절대 나빠지지 않는다. 한꺼번에 많은 시간과 노력을 투자해 코드를 정리할 필요가 없다.


❓궁금한 내용, 잘 이해되지 않는 내용

  • ‘작게 추상화하라’는 원칙을 설명하며, ‘집합에서 항목찾기’ 예시를 들었는데 명확하게 다가오지 않았다. 추상화의 개념에 대해서 명확히 알지 못했기 때문이다. 소프트웨어 개발에서 추상화가 가지는 의미에 대해서 더 찾아보았다.
    추상화 : 구체적인 것을 감추고, 보고 싶어하는 전체적인 특성을 드러내는 것. 생각의 단위를 묶어서 그룹으로 만들 수 있으며, 그것이 무엇을 의미하는지를 알 수 있도록 해준다.

예시 printf()

  • 파일에 대한 출력을 담당하는 의미를 가진다.
  • 구체적인 출력에 관련된 내용을 추상적으로 대표해서 표현한다.
  • printf() 함수가 실제로 출력하기 위해서 하는 일은 모르지만, 어떠한 역할을 하는지 알고 사용한다. 그것만으로도 구현하는데 충분한 정보가 되기 때문이다.

댓글남기기