실무를 하다보면 다른 사람이 개발한 소스를 보는 경우가 많습니다.
정말 잘 짜여진 클린코드도 있지만 WTF를 연발하게 하는 코드도 있습니다.
요즘은 Git과 같은 형상관리 툴을 사용하기 때문에 작성한 코드는 영구 박제되죠.
개발 히스토리에서 그 개발자의 아이디만 보면 욕이 절로 나오는 상황이 발생할 수도 있습니다.
그 개발자가 내가 아니길 바란다면 가독성이 좋고 클린한 코드를 작성해야 합니다.
복잡한 코드 미로로 인해 많은 시간을 소비하는 개발자라면 이 책을 통해 단순하고 클린한 코드를 작성하는 법을 익힐 수 있습니다.
주요 내용
1~3장까지는 단순하고 생산성을 높이고 어디에 집중해야 하는지 배웁니다.
80:20이라는 파레토 원칙이 주는 심오한 영향력과 최소 기능 제품을 통한 제품의 배포와 개선에 대해 이해하게 됩니다.
4장은 클린하고 단순한 코드를 작성하기 위한 17가지 원칙들과 구체적인 파이썬 소스를 예로 보여줍니다.
개발자라면 들어봤을 법한 원칙들의 실제 사례를 파이썬 소스를 통해 개선하는 방법을 보여주고 있기 때문에 가장 도움이 되는 부분이라고 생각합니다.
- 원칙 1 : 큰 그림을 생각하라
- 원칙 2 : 거인들의 어깨위에 서라
- 원칙 3 : 기계가 아닌 사람을 위한 코드
- 원칙 4 : 올바은 이름을 사용하라
- 원칙 5: 표준을 지키고 일관성을 유지하라
- 원칙 6 : 주석을 사용하라
- 원칙 7 : 불필요한 주석들을 피하라
- 원칙 8 : 놀람 최소화 원칙
- 원칙 9 : 반복하지 않기
- 원칙 10 : 단일 책임 원칙
- 원칙 11 : 테스트
- 원칙 12 : 작은 것이 아름답다
- 원칙 13 : 디미터의 법칙
- 원칙 14 : 필요하지 않아요
- 원칙 15 : 과도한 들여쓰기 금지
- 원칙 16 : 지표를 사용하라
- 원칙 17 : 보이 스카웃 법칙과 리팩터링
5장에서는 사용자나 개발자들에게 삶의 질을 향상시키지 않는 최적화의 위험성과 성능 튜닝 팁 6가지를 배우게 됩니다.
- 측정을 먼저, 개선은 다음
- 파레토가 왕
- 알고리즘 최적화가 최고
- 캐시 만세
- 적은 게 더 많다
- 멈춰야 할 때를 알기
6장에서는 몰입을 통한 생산성 향상을 높이는 방법과 그 몰입에 이르는 법에 대한 팁을 배우게 됩니다.
7장에서는 좋은 코드를 작성하기 위한 유닉스 철학과 15개의 유용한 유닉스 원칙들을 소개합니다.
클린하고 단순함을 유지하면서 유닉스 생태계가 커가는데 도움이 되는 15개 원칙을 업무에 어떻게 적용할 수 있는지 배울 수 있습니다.
- 각 함수는 한 개의 일을 잘한다
- 단순함이 복잡함보다 좋다
- 작은 것이 아름답다
- 프로토타입을 가능한 빠르게 만든다
- 효율성보다는 이식성을 선택한다
- 데이터는 플랫 텍스트 파일에 저장한다
- 소프트웨어를 레버리지로 사용한다
- 캡티브 사용자 인터페이스를 피한다
- 모든 프로그램을 필터로 만든다
- 더 나쁜 것이 더 좋다
- 클린 코드가 영리한 코드보다 좋다
- 다른 프로그램과 연결되는 프로그램을 설계한다
- 코드를 견고하게 만든다
- 여러분이 할 수 있는 것은 고친다. 하지만 실패는 빠르고 시끄럽게
- 손해킹은 피한다: 할 수 있다면 프로그램을 생성하는 프로그램을 만든다
8장에서는 최소주의적 디자인이 세계를 주도했는지 소개하고 인터페이스 구성에 대해 고민하게 됩니다.
마지막 9장에서는 워렌버핏과 빌게이츠의 성공 법칙인 집중을 통해 목표를 달성하는 법에 배우게 됩니다.
대상 독자
- 더 빠른 코드와 더 적은 고통으로 더 많은 가치를 만들고 싶은 프로그래머
- 생산성을 향상하고 더 적은 것으로 더 많은 것을 하고 싶은 프로그래머
- 처음부터 클린 코드를 배우고 적용해보고 싶은 프로그래머
- 코딩을 해봤지만 클린 코딩에 대해 잘 모르는 프로그래머
좋은 코드를 만들기 위한 최적화 기법과 얽혀있는 코드를 개선하기 위한 최적화 기법을 찾는다면 이 책을 읽어보세요
프로그래밍 기술을 향상시키는 방법에 대한 통찰을 얻게 되고 단순화를 구현하는데 필요한 지식을 얻을 수 있습니다.
아담 슈뢰더, 플로틀리의 커뮤니티 매니저가 "만약 내가 처음 코딩을 시작했을 때 이 책을 봤으면 좋았을 텐데" 와 같이 말한 것처럼 좋은 코드를 만들고 싶은 개발자라면 이 책을 보는 것을 추천합니다.
'정보' 카테고리의 다른 글
구형 맥북, 맥미니, 아이맥 속도 최적화 설정 방법 (0) | 2023.03.21 |
---|---|
로지텍 K855 키보드 고무링으로 소음 줄이기 (0) | 2023.03.07 |
맥OS 벤추라에서 시스템 정보 보는 방법(배터리 성능 / SSD 용량 확인) (0) | 2023.03.05 |
맥북 파인더 편하게 설정하기 (0) | 2023.03.05 |
ChatGPT 계산 오류 (0) | 2023.02.28 |
댓글