본문 바로가기
728x90

도서/클린코드11

7. 오류 처리 깨끗한 코드와 오류 처리는 연관성이 있다. 오류 처리 코드가 흩어져 있으면 실제 코드가 하는 일을 파악하기 거의 불가능 하다. 또 한 오류처리 코드로 인해 프로그램 논리를 이해하기 어려워 질 수 있다. 따라서 다음과 같은 방법을 통해 제대로된 오류 처리를 하면서도 깨긋한 코드를 작성해야 한다. 오류 코드보다 예외를 사용하라 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 public class DeviceController { public void sendShutDown() { DeviceHandle handle = getHandle(DEV1); // 디바이스 상태를 점검한다 if (handle != DeviceHandle.INVALID) { // 레코드 필드에.. 2022. 1. 18.
6. 객체와 자료 구조 객체지향 패러다임에서 변수를 private으로 하는 이유는 변수에 의존하는 것을 막기 위해서이다. 그렇다면 왜 수많은 개발자들이 접근자와 수정가를 public으로 사용할까? 자료 추상화 변수를 private으로 선언하고 각 값마다 접근자와 수정자를 만든다면 이것은 진정한 캡슐화가 아니다. 변수 사이에 함수라는 계층을 넣는것 만으로는 구현이 감추어지지 않는다. 진정한 캡슐화를 위해서는 추상 인터페이스를 제공해 사용자가 구현을 모른 채 자료의 핵심을 조작할 수 있어야 한다. 즉, 자료를 세세하게 표기하기 보다는 추상적인 개념으로 표기해야 한다. 이런 논리에 의거해 다음 두 인터페이스를 보면 두번째 인터페이스가 더 객체지향 스럽다는 것을 알 수 있다. 1 2 3 4 5 6 7 8 9 10 // 자동차 연료 상.. 2022. 1. 17.
5. 형식 맞추기 개발자라면 형식을 깔끔하게 맞춰 코드를 작성해야 한다. 코드 형식을 맞추기 위해 간단한 규칙을 정하고 그 규칙을 착실하게 따라야 한다. 형식을 맞추는 목적 코드의 형식은 매우! 아주! 중요하다! 코드 형식은 의사소통의 일환이다. 의사소통은 전문 개발자의 일차적인 의무다. 작성한 코드는 매우 불안정하다. 오늘 작성한 코드가 내일 바뀔 수 도 있다. 이때 코드의 가독성이 낮다면 앞으로 바뀔 코드 품질에 지대한 영향을 미친다. 오랜 시간이 흘러 초기의 코드 흔적을 찾아볼 수 없을지라도 맨 처음 잡아놓은 구현 스타일과 가독성 수준은 유지보수 용이성과 확장성에 지속적인 영향을 미친다. 원활한 소통을 위해서는 다음과 같은 코드 형식을 지켜야 한다. 적절한 행 길이를 유지하라. 하나의 파일의 행 길이가 적어야 이해하.. 2022. 1. 13.
4. 주석 잘 달린 주석은 그 어떤 정보보다 유용하다. 근거 없는 주석은 코드를 이해하기 어렵게 만든다. 오래되고 조잡한 주석은 거짓과 잘못된 정보를 퍼뜨린다. 주석은 잘 해봐야 필요악이다. 개발자가 프로그래밍 언어를 제대로 사용할 능력이 있다면, 주석은 전혀 필요하지 않다. 개발자들은 코드의 의도를 표현하지 못해서 실패를 만회하기 위해 주석을 사용한다. 따라서 주석을 사용해야되는 상황이 올때마다 정말 코드를 통해 의도를 명확히 전달할 방법이 없는지를 우선적으로 생각해야 한다. 주석이 나쁜 이유는 주석이 코드를 따라가지 않기 때문이다. 코드는 지속적으로 변한다. 코드는 지속적으로 위치가 변하고 여러개로 쪼개지기도 한다. 하지만 주석은 이런 코드의 변화를 바라보기만 한다. 물론 주석 역시 엄격한 관리를 통해 코드의 .. 2022. 1. 10.
728x90