-
코드스멜 (CodeSmall)Domain knowledge 2021. 5. 30. 00:00반응형
코드스멜이란?
코드 스멜(code smell←코드 냄새)은 컴퓨터 프로그래밍 코드에서 더 심오한 문제를 일으킬 가능성이 있는 프로그램 소스 코드의 특징을 가리킨다.
여러가지 기준과 체크 방법이 있으며 코드리뷰나 PR 시에 이러한 기준을 두고 상대방과 코드에 대한 소통하는 편이 여러가지로 도움이 될 수 있다고 봅니다.
일반적으로 아래와 같은 기준들이 있으며 오래동안 개발을 하다보면 어느정도 경험에 의해서 많이 걸리지는 부분도 있습니다.
- 중복 코드
- 억지로 꾸민듯한 복잡성
- 커다란 클래스
- 기능에 대한 욕심
- 부적절한 관계
- 거부된 유산
- 게으른 클래스
- 리터럴의 과도한 사용
- 순환 복잡도
- 다운캐스팅
- 고아 변수 또는 컨스턴트 클래스
- 너무 많은 매개변수
- 긴 메서드
- 과도하게 긴 식별자
- 과도하게 짧은 식별자
- 과도한 데이터의 반환
https://ko.wikipedia.org/wiki/%EC%BD%94%EB%93%9C_%EC%8A%A4%EB%A9%9C
http://jidum.com/jidums/view.do?jidumId=315
https://refactoring.guru/refactoring/smells
https://nesoy.github.io/articles/2018-05/Refactoring-BadSmell
반응형'Domain knowledge' 카테고리의 다른 글
Design system 이란? (0) 2023.02.21 오픈소스 라이선스 (Open Source License) (0) 2023.01.05 이터레이션(Iteration)이란? (0) 2021.02.14 핸드셰이킹 (handshake) (0) 2020.11.10 FLOPS (Floating point operations per second) (0) 2020.10.05 클린 아키텍처(Clean Architecture) (0) 2020.01.18 JAVA String 객체 와 String 리터럴(literal) (0) 2019.10.16 러너블(Runnable)이란? (0) 2019.10.05