Clean Code란 무엇인가?
멘토들이 생각하는 clean code란 ?
- 논리가 간단해야 버그가 숨어들지 못한다
- 의존성을 줄여야 유지보수가 쉽다.
- 깨끗한 코드는 한가지를 제대로 한다.
- 깨끗한 코드는 단순하고 직접적이다.
- 잘쓴 문장처럼 읽힌다.
- 설계자의 의도를 숨기지 않는다.
- 명쾌한 추상화와 단순한 제어문이 가득하다.
- 작성자가 아닌 사람도 읽기 쉽고 고치기 쉽다.
- 단위 테스트 케이스와 인수 테스트 케이스가 존재
- 특정 목적을 당성하는 방법은 하나만 제공
- API는 명확하며 최소로 줄임
Clean Code가 필요한 이유는?
내가 1시간 걸릴 코드를 클린 코드로 짜겠다고 2시간이 걸렸을지라도
협업 개발자들은 해당 코드를 보고 이해하고 분석하고 응용하는데 걸리는 시간은 그만큼 단축되었다고 볼 수 있다.
Clean Code를 학습하는 방법
- 클린코드 책 읽기
- 직접 적용해보기
- 내 프로젝트 리팩토링 해보기
- Clean Code 룰에 맞춰 만들어보기
- 프로젝트에 맞는 Clean Code 룰 만들기
- 담당 프로젝트 내에서 좋은 코드를 찾아보기
- 오픈 소스에서 좋은 코드를 찾아보기
누구나 보기에 편안한 코드, 명확한 코드, 의도를 잘 드러내는 테스트 등은 선택이 아니라 필수 !
- 의도를 분명히 밝혀라
- 그릇된 정보를 피하라
- 의미있께 구분하라
- 검색하기 쉬운 이름을 사용
- 한 개념에 한 단어를 사용하라
- 함수를 만드는 첫째 규칙은 작게!
- 둘째 규칙은 더 작게 !
- 함수는 한가지만을, 한가지를 잘, 한가지를 해야한다.
- DRY : 반복하지마라
- 주석은 최소화 명확한 네임으로
- 주절거리는 주석은 안좋다..
- null을 반환하는 코드는 나쁜 코드 > 널 체크가 너무 많아도 안좋기 때문에