1. 반복되는 코드를 작성하지 않는다.

  2. 변수는 최대한 사용하는 위치에 가깝게 사용한다.

  3. 파라미터 변수와 내부 변수를 구별할 땐 언더바가 아닌 this로 구별한다.

  4. 코드의 길이가 짧고 명료한 것도 좋지만, 가독성이 현저히 떨어진다면 코드를 좀 더 풀어쓴다.

  5. 모든 예외는 무시하지말고 처리한다. 만약 예외를 처리하지 않을거라면 그 이유에 대해서 명확하게 주석을 남긴다.

  6. 예외를 던질 때는 최대한 세부적인 Exception(= Custom Exception)을 던진다.

  7. 예외 케이스가 발생할 확률이 있는 경우, 가능한 빨리 리턴 또는 예외를 던지도록 작성한다.

  8. 조건이 복잡한 경우 임시 boolean 변수를 만들어 단순화한다.

  9. 조건문에 부정조건을 넣는 것을 피한다.

  10. 최대한 객체 타입 대신 기본 자료형을 선택하고, 생각지도 못한 Autoboxing이 발생하지 않도록 유의한다.