도서/클린코드 2

2장 의미있는 이름

이름 작성 규칙 명확한 의도 함수명, 변수명 등의 이름을 지을 때에는 명확한 의도가 보이도록 이름 작성하기 ex) int d; // 경과 시간을 나타낸 것이지만 명확한 의미를 파악하기 X int daysSinceCreation; // 이와 같이 의도가 보이는 것으로 이름 작성하기 잘못된 정보 피하기 다른 뜻으로 의미가 전달될 수 있는 이름 피하기 ex) int hp; // 직각삼각형의 빗변(hypotenuse) 구현에 사용하는 변수 괜찮은 약자라고 보이지만 다른 의미로 파악될 수 있으므로 좋은 변수명은 아니다. 유사한 이름 사용 X ex) XYZControllerForEfficientHandlingOfStrings와 XYZControllerForEffecientStorageOfStrings의 이름만으로 ..

도서/클린코드 2023.06.13

1장 깨끗한 코드

나쁜 코드 바쁜 일정을 소화하기 위해서 나중에 수정하면 된다는 생각으로 대충 짠 코드들 → 르블랑의 법칙으로 인해 다시 수정하지 않음 나쁜 코드의 대가 나쁜 코드가 쌓일수록 팀 생산성 감소 그러므로 항상 깨끗한 코드를 작성하기 위해서 노력 깨끗한 코드란? 비야네 스트롭스트룹 효율적인 코드 철저한 오류 처리 코드는 한 가지 일을 수행 그래디 부치 단순하고 직접적 잘 읽히고 명확한 코드 명확한 추상화와 단순한 제어문 큰 데이브 토마스 다른 사람이 읽기 쉬운 코드 테스트 케이스 존재 의미 있는 이름 최소한 의존성 명확한 의미가 정의된 의존성 마이클 페더스 주의 깊게 작성한 코드 론 제프리스 모든 테스트 통과 중복 X 시스템 내 모든 설계 아이디어 표현 최소한의 클래스, 메서드, 함수 등 워드 커닝햄 생각한대로..

도서/클린코드 2023.06.13