긱사생 프로젝트 클린 코드 규칙
- 자바 코드 컨벤션을 지키면서 프로그래밍한다.
- indent(인덴트, 들여쓰기) depth를 를 넘지 않도록 구현한다.
1(tab 한번)까지만 허용한다.
- 반복문은 들여쓰기 인정함. 들여쓰기 2 인정.
- 예를 들어 while문 안에 if문이 있으면 들여쓰기는 2이다.
- if문 안에 if문 안됨.
- Optional이라는 위대한 기능을 이용해라.
- 힌트: indent(인덴트, 들여쓰기) depth를 줄이는 좋은 방법은 함수(또는 메서드)를 분리하면 된다.
- 3항 연산자를 쓰지 않는다.
- 배열 대신 컬렉션을 사용한다.
- 줄여 쓰지 않는다(축약 금지).
- 모든 엔티티를 작게 유지한다.
- getter/setter/프로퍼티를 쓰지 않는다. 최대한 객체에게 메세지를 보낸다. (메서드를 사용)
- 멤버변수 5개 미만 생성자, 이상 빌더 사용.
- 람다, 스트림 프로그래밍 사용. Optional에서 Optional.orElseXXX 관련 함수 사용.
- 온점 많이 쓰지 않기. 2개 (제한). list.add(member.get()) → 이런건 컷
- 변수와 메서드는 카멜케이스로 적는다. 대문자는 띄어쓰기 부분만.
- 띄어쓰기, 줄 바꿈 중요시한다.
- 옳은 예시 : sum = num1 + num2;
- 나쁜 예시 : sum=num1+num2;
- else 예약어를 쓰지 않는다.
- else 예약어를 쓰지 말라고 하니 switch/case로 구현하는 경우가 있는데 switch/case도 허용하지 않는다.
- 힌트: if문에서 값을 반환하는 방식으로 구현하면 else 예약어를 사용하지 않아도 된다
참고
객체지향 생활 체조 - 규칙 2: else 예약어 금지
본인이 배운 객체지향 체조
- 한 메서드에 오직 한 단계의 들여쓰기만 한다.
- else 예약어를 쓰지 않는다.