클린코드 1장 ~ 2장
#개발서적

클린코드 1장 ~ 2장

 

주제

  • 클린코드 1장 ~ 2장 정리

 


1장  "깨끗한 코드" 요약

1. 깨끗한 코드란 무엇인가?

# 메모

코드는 요구사항을 표현하는 수단

질 나쁜 코드가 누적되면 생산수단이 저하된다

요구사항의 변화와 시간의 압박으로 인한 코드 품질 저하

결국 좋은 품질의 코드를 생산하는 것은 프로그래머의 몫

빠른 시간 안에, 좋은 품질의 코드를 생산하기 위한 가장 좋은 방법은 코드를 깨끗하게 유지하는 습관이다.

 

나쁜 코드를 보고 나쁘다는 생각은 누구나 떠올릴 수 있지만, 개선 방안을 떠올리는 것은 코드 감각이 있는 프로그래머

깨끗한 코드는 보는 사람에게 즐거움을 선사해야 한다

오류 처리에 철저하라(메모리 누수, 경쟁 상태, 일관성 없는 명명법)

깨끗한 코드는 잘 쓴 문장처럼 읽혀야 한다

 

깨끗한 코드는 작성자가 아닌 사람도 읽기 쉽고 고치기 쉽다. 

단위 테스트 케이스와 인수 테스트 케이스가 존재한다.

목적을 달성하는 방법은 하나만 제공

의존성은 최소이며 각 의존성을 명확히 정의

API는 명확하며 최소로 ..

 

코드는 주의 깊게, 깔끔하고 단정하게 작성하라

모든 테스트에 통과한다

중복이 없다

시스템 내 모든 설계 아이디어를 표현한다.

클래스, 메서드, 함수 등을 최대한 줄인다.

중복 줄이기, 표현력 높이기, 초반부터 간단한 추상화 고려하기

 

요약 : 중복을 피하라. 한 기능만 수행하라. 제대로 표현하라. 작게 추상화하라.

 

우리는 새 코드를 짜면서 기존 코드를 끈임 없이 읽는다.

읽기 쉬운 코드가 매우 중요하다.

주변 코드가 읽기 쉬우면 새 코드를 짜기도 쉽다.

 

 

# 요약

프로그래머는 깨끗한 코드를 작성하는 습관을 들여야 한다.

깨끗한 코드 읽기 쉽고 고치기 쉽다

단위 테스트, 인수 테스트를 작성해야 한다.

의존성은 최소화 하라

 

중복을 피하라. 한 기능만 수행하라. 제대로 표현하라. 작게 추상화하라.

 


 

 

2장 "의미 있는 이름" 요약

이름을 잘 짓는 방법

# 메모

의도가 분명한 이름을 지어라 (존재 이유, 수행 기능, 사용 방법)

이름을 잘 지으면, 이름 만으로 어떤 것을 수행하는지 짐작할 수 있다

 

잘못된 단서를 주지마라(리스트가 아닌데 List를 이름에 포함)

유사한 이름을 사용하지 마라

 

변수는 의미 있게 구분해야 한다.

비슷한 일을 수행하는 변수에 연속된 숫자나 불용어를 추가하지 마라(name1, name2, Product, ProductInfo, ProductData)

Info, Data는 모호하고 의미가 불분명하다.

메소드도 마찬가지로 getActiveAccount(), getActiveAccounts(), getActiveAccountInfo() 어떤 것을 호출할지 구분이 안 된다

 

발음하기 쉬운 이름을 사용하라

검색하기 쉬운 이름을 사용하라

이름 길이는 범위 크기에 비례해야 한다.(로컬 변수까지는 int i 가능)

자신만 아는 이름은 피하라


클래스 이름 : 명사나 명사구

메서드 이름 : 동사나 동사구

 

한 개념에 한 단어만 사용하라.

추상적인 개념을 여러 단어로 부른다면 헷갈린다.

 

한 단어를 두 가지 목적으로 사용하지 마라. (add는 더한다(+)도 가능하지만 추가한다도 가능)

 

적절한 기술 용어를 이름에 사용하는 것은 좋다(읽는 사람도 프로그래머)

맥락을 분명하게 하라

 

의미가 분명할 경우 짧은 이름이 긴 이름이 좋다

 

 

 

 

# 요약

..이름을 의미 있게 지어서 읽기 좋은 코드에 기여하라 (이름만 보고 짐작이 가야 함)

 

 

728x90

'#개발서적' 카테고리의 다른 글

클린코드 9장  (0) 2023.08.01
클린코드 6~8장  (0) 2023.06.14
클린코드 4~5장  (0) 2023.06.06
클린코드 3장  (0) 2023.06.06
[스프링 부트와 AWS로 혼자 구현하는 웹 서비스] 정리  (0) 2021.05.26