1장. 깨끗한 코드

ssu_hyun·2023년 9월 19일
0

Clean Code

목록 보기
2/12
  • DSL(Domain Specific Language)
    : 도메인에 특화된 언어는 특정 문제 도메인, 특정 문제 표현 기법, 특정 문제 해결 기법에 사용할 목적으로 만든 프로그래밍 언어나 명세 언어를 의미한다. 해당 분야 전문가들의 의사 소통을 돕기 위해, 모호함을 없애며 표현력을 높인 특징이 있다.
  • 궁극적으로 코드는 요구사항을 표현하는 언어라는 사실을 명심한다.
  • 간단한 코드의 규칙
    • 중복을 피하라
    • 한 기능만 수행하라
    • 제대로 표현하라
    • 작게 추상화하라
  • 이만큼 깨끗한 코드는 너무도 잘 짜놓은 코드라 읽는 이가 그 사실을 모르고 넘어간다. 모든 뛰어난 설계처럼 설계자가 코드를 어이 없을 정도로 단순하게 설계했기 때문이다.
  • 기존 코드를 읽어야 새 코드를 짜므로 읽기 쉽게 만들면 사실을 짜기도 쉬워진다. - Agile Software Development : Principles, Patterns, and Practices의 다섯 가지 원칙
    • SRP(The Single Responsibility Principle) : 클래스에는 한 가지, 단 한 가지 변경 이유만 존재해야 한다.
    • OCP(The Open Closed Principle) : 클래스는 확장에 열려 있어야 하며 변경에 닫혀 있어야 한다.
    • LSP(The Liskov Substitution Principle) : 상속받은 클래스는 기초 클래스를 대체할 수 있어야 한다.
    • DIP(The Dependency Inversion Principle) : 추상화에 의존해야 하며, 구체화에 의존하면 안 된다.
    • ISP(the Interface Segregation Principle) : 클라이언트에 밀접하게 작게 쪼개진 인터페이스를 유지한다.

0개의 댓글