1장 깨끗한 코드
📖 나쁜 코드는 나쁜 코드를 '유혹'한다!
목차
🗒️ 책에서 기억하고 싶은 내용
객체 지향 설계의 다섯 가지 원칙 (SOLID)
SRP(단일 책임 원칙) : 클래스에는 한 가지, 단 한 가지 변경 이유만 존재해야 한다.
OCP(개방 폐쇄 원칙) : 클래스는 확장에 열려 있어야 하며 변경에 닫혀 있어야 한다.
LSP(리스코프 치환 원칙) : 상속받은 클래스는 기초클래스를 대체할 수 있어야 한다.
ISP(인터페이스 분리 원칙) : 클라이언트에 밀접하게 작게 쪼개진 인터페이스를 유지한다.
DIP(의존관계 역전 원칙) : 추상화에 의존해야 하며, 구체화에 의존하면 안 된다.
바야네 스트롭스트룹 (C++ 창시자 / The C++ Programming language 저자)
나는 우아하고 효율적인 코드를 좋아한다.
논리가 간단해야 버그가 숨어들지 못한다. 의존성을 최대한 줄여야 유지보수가 쉬워진다.
오류는 명백한 전략에 의거해 철저히 처리한다.
성능을 최적으로 유지해야 사람들이 원칙 없는 최적화로 코드를 망치려는 유혹에 빠지지 않는다.
깨끗한 코드는 한 가지를 제대로 한다.
🗒️ 소감
1장에서는 깨끗한 코드의 필요성에 대해 알려주고 있다.
다양한 프로그래머들의 '깨끗한 코드'에 대한 의견을 보고 공감할 수 있었고,
그중 가장 인상 깊었던 비야네의 정의를 위에 작성해 두었다.
효율을 중요시하기 때문에 깨끗한 코드와 리팩토링에 관심이 많아 흥미로운 책이 될 것 같다.
그리고 Clean Code의 시퀄인 다양한 설계 원칙을 거론한 'PPP'를 읽어보고 싶다.
설계의 5원칙을 이 책의 저자인 'Robert C. Martin'이 정리한 것임을 알게 되었다.
5원칙을 지키면 깨끗한 코드를 작성할 수 있고, 깨끗한 코드를 작성하면 5원칙을 지킬 수 있겠구나!
🗒️ 궁금하거나 어려웠던 내용
X
'도서 > Clean Code' 카테고리의 다른 글
[Clean Code/클린 코드] 5장 형식 맞추기 (0) | 2023.12.04 |
---|---|
[Clean Code/클린 코드] 4장 주석 (2) | 2023.12.04 |
[Clean Code/클린 코드] 3장 함수 (2) | 2023.12.03 |
[Clean Code/클린 코드] 2장 의미있는 이름 (2) | 2023.12.03 |
[Clean Code/클린 코드] (2) | 2023.12.03 |