Chap.1 서두르지 않으면 더 빠르다. 고품질 코드란? + 서론

·2023년 2월 7일
0

Good Code, Bad Code - 제이펍
프로그래머의 코드 품질 개선법

톰 롱 지음 / 제이펍 출판


책을 읽기 시작한 이유

원하는 결과를 출력하는 것에만 기뻐하는 시절은 지났다.
최근 개발을 하며 내 코드는 좋은 코드일지에 대하여 고민하는 시간이 늘어났다.
모듈화, 재사용성에 집착해 함수와 컴포넌트 쪼개기에 집착하고, 변수명 하나를 짓는데 수 분동안 고민하기도 했다. 그러나 좋은 코드🤷‍ 라는 기준은 너무 추상적이어서 어제는 이게 좋아보였으나, 오늘은 못생겨보이는..😅 나의 기분에 따라 달라지는 일이 발생했다.
내 안에 그 기준이 명확히 자리잡지 못하니, 갈팡질팡 코드를 작성하며 너무 많은 시간을 허비하곤 했다.

또한 회사 내에 아직 코드리뷰 문화가 자리잡지 못하여, 코드리뷰를 더 강력히 추진하고 싶은데.. 나부터가 코드에 대한 확신이 없으니 리뷰를 해도 팀원들에게 도움을 주기 어려울 것으로 예상되었다.

이에 좋은 코드란 무엇인가에 대하여 제대로 알아보자 란 마음을 먹고, Good Code, Bad Code 책을 완독까지 달려보고자 한다.


1일차

[📍 오늘 TIL 3줄 요약 ]

  • 고품질 코드란? 읽기 쉬운 / 예측 가능한 / 오용하기 어려운 / 모듈화된 / 재사용 가능하고 일반화된 / 테스트가 용이한 코드를 말한다.
  • 테스트는 코드를 작성하는 모든 단계에서 고려하는 것이 좋다. 모듈화가 된 코드는 테스트 용이성이 좋다.
  • 서두르지 않으면 더 빠르다. 고품질 코드는 단기적으로는 일정 지연처럼 보일 수 있지만, 중장기적으로는 개발 시간을 단축해준다.

[ 오늘 읽은 범위 ]

  • Chap 1. 코드 품질

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

  • 재사용성과 일반화성의 의미
    • 재사용성 - 동일한 문제를 해결하기 위한 것이 다양한 상황에서도 사용될 수 있음.
    • 일반화성 - 미묘하게 서로 다른 문제를 한 가지 개념으로 해결할 수 있음
  • 테스트의 종류
    • 단위테스트 / unit test
      개별 함수나 클래스와 같은 작은 단위의 코드를 테스트
    • 통합테스트 / integration test
      여러 구성 요소, 모듈, 하위 시스템 등을 함께 연결하는 과정을 테스트
    • 종단간 테스트 / end-to-end
      처음부터 끝까지의 워크플로우를 테스트
  • 개발과 배포 프로세스 코드베이스 → 코드제출 → 코드 검토 → 제출 전 검사 → 배포 → 프로덕션

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

  • 내가 작성하는 코드에 대해서 좀 더 확신을 갖고 좋은 코드를 작성하고 싶어 책을 읽기 시작했으며, 책을 완독하고 나면 이루고자 했던 목표를 달성 할 수 있을 거라는 자신감이 든다.
  • 대략적으로만 생각해왔던 좋은 코드에 대한 이론에 확신을 갖게 되었다.

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

profile
나 예인쓰, 응애인디

0개의 댓글