노개북(노마드코더 Challenges)-클린코드 DAY1

mingki·2022년 4월 24일
0

3주동안 클린코드 책을 읽는 챌린지 노개북 클린코드 챌린지를 신청했다
그동안 책을 읽어야지 생각만 했지 실천하지못했다 이기회에 열심히 읽고 실무에 적용하도록 노력해야겠다!

1장. 깨끗한코드

★ 깨끗한코드가 필요한 이유

  1. 코드는 기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업(프로그래밍)을 명시한 결과이다
    -> 코드는 요구사항을 표현하는 언어이다
  2. 나쁜코드가 쌓일수록 팀 생산성이 떨어진다

❤️ 깨끗한코드란?

  • 비야네 스트롭스트룹
  1. 논리가 간단하다
  2. 의존성을 최대한 줄인다
  3. 세세한 사항까지 꼼꼼하게 처리한다
  4. 한가지에 집중한다
  • 그래디 부치
  1. 단순하고 직접적이다
  2. 깨끗한 코드는 잘 쓴 문장처럼 읽힌다(가독성이좋다)
  3. 설계자의 의도를 숨기지않는다 -> 하결할 문제의 긴장을 명확히 드러낸다
  4. 코드는 추측이 아니라 사실에 기반하여 반드시 필요한 내용만 담아야한다
  • 큰 데이브 토마스
  1. 작성자가 아닌 사람도 읽고 고치기 쉽다
  2. 단위테스트 케이스와 인수테스트 케이스가 존재한다
  3. 특정목적을 달성하는 방법은 하나만 제공한다
  4. 의존성은 최소이며 각 의존성을 명확히 정의한다
  • 마이클 패더스
  1. 작성자가 이미 모든 사항을 고려한다 -> 세세한 사항까지 꼼꼼하게 신경쓴 코드
  • 론 제프리스
  1. 모든 테스트를 통과한다
  2. 중복이 없다
  3. 시스템 내 모든 설계 아이디어를 표현한다
  4. 클래스,메서드,함수 등을 최대한 줄인다
  • 워드 커닝햄
  1. 코드를 독해하느라 머리를 쥐어짤 필요가 없어야 한다 (가독성)

◆ 정 리

  • 중복을 줄인다
  • 한가지 기능만 수행한다
  • 제대로 표현한다
  • 작게 추상화 한다

‼️ 나의 생각

깨끗한코드 챕터를 읽으면서 많이 공감했다
현재 진행하고 있는 프로젝트에서 내가 처음 코드를 작성했을때 어마어마한 중복과 한가지의 메서드로 여러 기능을 수행하도록 코드를 작성했다
내가 작성한 코드를 동료가 처음 열어보고 기겁했던 기억이 난다
이 챕터의 첫부분에서 나오는것 처럼 나도 나중에 수정할 생각으로 당장 기능만 구현하자 하고 코드를 작성했었다 하지만 갈수록 시간은 부족했고 엉켜있는 코드 때분에 코드 해석에 많은 시간을 허비해 더많은 시간을 낭비했고, 동료에게 질문을 할때엔 동료가 나의 코드를 해석하는데 너무오랜시간이 걸려 생산성이 떨어진것을 경험했다
해당 챕터에서 "시간을 들여 깨끗한 코드를 만드는 노력이 비용을 절감하는 방법일 뿐만 아니라 전문가로서 살아남는 길 이라는 사실을 인정하리라" 라는 구절이 정말 와 닿았다

profile
비전공초보개발자

0개의 댓글