Reference/CleanCode

    [Clean Code] 7. 오류 처리

    📕 목차 1. 오류 코드보다 예외를 사용하라 2. Try-Catch-Finally 문부터 작성하라 3. 미확인(unchecked) 예외를 사용하라 4. 예외에 의미를 제공하라 5. 호출자를 고려해 예외 클래스를 정의하라 6. 정상 흐름을 정의하라 7. null을 반환하지 마라 8. null을 전달하지 마라 1. 오류 코드보다 예외를 사용하라 📌 As-is. 오류 코드 public class DeviceController { ... public void sendShutDown() { DeviceHandle handle = getHandle(DEV1); // Check the state of the device if (handle != DeviceHandle.INVALID) { // Save the devi..

    [Clean Code] 6. 객체와 자료 구조

    📕 목차 1. 자료 추상화 2. 자료/객체 비대칭 3. 디미터 법칙 • 기차 충돌 • 잡종 구조 • 구조체 감추기 4. 자료 전달 객체 (DTO, Data Transfer Object) • 활성 레코드 1. 자료 추상화 // 구체적인 Point 클래스 public class Point { public double x; public double y; } // 추상적인 Point 클래스 public interface Point { double getX(); double getY(); void setCartesian(double x, double y); double getR(); double getTheta(); void setPolar(double r, double theta); } 인터페이스를 사용한 Po..

    [Clean Code] 5. 형식 맞추기

    📕 목차 1. 형식을 맞추는 목적 2. 적절한 행 길이를 유지하라 • 신문 기사처럼 작성하라 • 개념은 빈 행으로 분리하라 • 세로 밀집도 • 수직 거리 • 세로 순서 3. 가로 형식 맞추기 • 가로 공백과 밀집도 • 가로 정렬 • 들여쓰기 • 가짜 범위 4. 팀 규칙 1. 형식을 맞추는 목적 코드 형식은 너무나 중요하기 때문에, 융툥성 없이 맹목적으로 따르면 안 된다. 코드 형식은 의사소통의 일환이며, 의사소통은 전문 개발자의 일차적 의무다. 오랜 시간이 지나 원래 코드의 흔적을 더 이상 찾아보기 어려울지라도, 맨 처음 잡은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 계속 영향을 미친다. 2. 적절한 행 길이를 유지하라 위 표를 통해, 500줄을 넘지 않고 대부분 200줄 정도인 파일로도 ..

    [Clean Code] 4. 주석

    📕 목차 1. 주석은 나쁜 코드를 보완하지 못한다 2. 코드로 의도를 표현하라! 3. 좋은 주석 • 법적인 주석 • 정보를 제공하는 주석 • 의도를 설명하는 주석 • 의미를 명료하게 밝히는 주석 • 결과를 경고하는 주석 • TODO 주석 • 중요성을 강조하는 주석 • 공개 API에서 Javadocs 4. 나쁜 주석 • 주절거리는 주석 • 같은 이야기를 중복하는 주석 • 오해할 여지가 있는 주석 • 의무적으로 다는 주석 • 이력을 기록하는 주석 • 있으나 마나 한 주석 • 무서운 잡음 • 함수나 변수로 표현할 수 있다면 주석을 달지 마라 • 위치를 표시하는 주석 • 닫는 괄호에 다는 주석 • 공로를 돌리거나 저자를 표시하는 주석 • 주석으로 처리한 코드 • HTML 주석 • 전역 정보 • 너무 많은 정보 ..