좋은 코드의 기준 - dnwls16071/Backend_Summary GitHub Wiki
🧑💻 "가독성"이라는 표현은 해롭다.
- 코드 품질 문제를 읽기 쉽냐 아니냐로 따지면 결국 내가 읽기 어려우면 나쁜 코드라고 판단하게 만든다.
- 주관적으로 판단하게 되면 결국 객관적으로 판단할 기회를 잃게 된다.
- 내가 코드를 이해 못하는 것을 다른 사람의 책임으로 돌린다.
- 문제 자체가 복잡해서 코드가 어려운 건데 코드 품질이 나쁜 것이라고 착각해서 고치다가 비즈니스 로직을 깨뜨린다.
🧑💻 Simple Design
- 테스트를 통과해야 된다.
- 의도를 드러내야 된다.
- 중복이 없어야 된다.
- 엘리먼트의 개수가 적어야 된다.
내가 생각하는 Simple Design이 무엇인지를 생각해본다면... 중복(Duplication)이 없으면서 구성 요소(Element)가 최소한인 코드인 것 같다.
🧑💻 Element
- 클래스
- 메서드, 함수
- 분기
- 변수와 상수
- 상속 계층
- 파일 수
- 폴더 계층, 폴더 수
- DB 테이블, 필드
- 라인 수