클린코드5 7장 오류처리 우아하고 고상하게 오류를 처리하는 기법과 고려 사항 몇 가지를 소개한다. 오류 코드보다는 예외를 사용해라 오류가 발생하면 예외를 던지는 것이 낫다. 그러면 호출자 코드가 더 깔끔해진다. 논리가 오류 처리 코드와 뒤 섞이지 않으니까. public class DeviceController { DeviceHandle handle = getHandle(DEV1); if (handle != DeviceHandle.INVALID) { retrieveDeviceRecord(handle); if (record.getStatus() != DEVICE_SUSPENDED) { closeDevice(handle); } else { logger.log("Device suspended. Unable to shut down"); .. 책 리뷰/클린코드 2023. 10. 14. 5장 : 형식 맞추기 5장 : 형식 맞추기 🙂 프로그래머라면 형식을 깔금하게 맞춰 코드를 짜야한다. 코드 형식을 맞추기 위한 간단한 규칙을 정하고 그 규칙을 착실히 따라야 한다. 팀으로 일한다면 팀이 합의해 규칙을 정하고 모두가 그 규칙을 따라야 한다. 형식을 맞추는 목적 오늘 구현한 기능이 다른 누군가에 의해 수정될 확률을 아주 높습니다. 또한 많은 수정이 있어도 맨 처음 잡아둔 코드 스타일과 가독성 수준은 유지보수의 용이성과 확장성에 계속해서 영향을 미칩니다. 즉 원래 코드 스타일을 사라져도 개발자의 규칙과 스타일은 사라지지 않습니다. 이렇기에 초반 원활한 소통을 위해서 코드 형식을 정해두고 시작해야 합니다. 추천하는 코드 형식 적절한 행 길이를 유지하라. 반드시 지킬 규칙을 아니지만 바람직한 규칙으로 삼았으면 좋겠다. .. 책 리뷰/클린코드 2023. 6. 28. 클린코드 4장 : 주석 4장 : 주석 주석은 오래될수록 코드에서 멀어진다. 프로그래머들이 주석을 유지하고 보수하는것은 현실적으로 어렵다. 또한, 코드는 변화하고 옮겨지면서 주석이 코드를 언제나 따라가지는 않는다. 부정확한 주석은 아예 없는 주석보다 훨씬 더 나쁘다. 부정확한 주석은 독자를 현혹하고 오도한다. 주석을 나쁜 코드를 보완하지 못한다. 코드에 주석을 추가하는 이유는 코드 품질이 나쁘기 때문이다. 표현력이 풍부하고 깔끔하며 주석이 없는 코드가 주석이 많이 달린 복잡하고 어수선한 코드보다 훨씬 좋다. 주석을 추가하기 위해 애쓰는 것보는 코드를 깨끗하게 관리하는데 시간을 보내라. 코드로 의도를 표현하라. 코드로 대다수의 의도를 표현할 수 있다. 많은 경우 주석으로 달려는 설명을 함수러 만들어 표현해도 충분하다. 좋은 주석 .. 책 리뷰/클린코드 2023. 6. 21. 3장 함수 작게 만들어라 20줄도 길다. 2~5줄 구성하라 함수에서 들여 쓰기 수준은 1단이나 2단을 넘어서지 않아야 한다(다중 중첩 금지) 한 가지만 해라 함수는 한 가지를 해야 한다. 그 한 가지를 잘해야 한다. 함수 내에 의미 있는 이름으로 추출가능한 부분이 있다면 함수가 분리 가능하다는 뜻이다. 함수당 추상화 수준은 하나로 한 함수 내에 추상화 수준을 섞으면 코드를 읽는 사람이 헷갈린다. 코드는 위에서 아래로 읽혀야 한다. -> 내려가기 규칙 Switch 스위치 문은 작게 만들기 어렵다. 하지만 switch문을 완전히 피할 방법은 없다. 하지만 switch 문을 저 차원 클래스에 숨기고 반복하지 않는 방법은 있다. -> 다형성을 이용한다. switch 문을 한 가지 단일 작업을 하기 어렵다는 점도 있다. 다.. 책 리뷰/클린코드 2023. 6. 5. Clean Code(1,2 장) 1장 중복을 피하라. 한 기능만 수행하라. 제대로 표현하라. 작게 추상화하라 이상이다. 2장 : 메서드 네이밍 의도를 분명히 밝혀라 그릇된 정보를 피하라 의미 있게 구분하라 발음하기 쉬운 이름을 사용하라 검색하기 쉬운 이름을 사용하라. 인코딩을 피하라 헝가리식 표기법 PhoneNumber phoneString → String에서 변경되었지만 변경사항을 수정하기 어렵다. —> 지금을 사용하지 않는 것이 좋다 멤버 변수 접두어 private String m_dsc // 설명문자열 (접두어 이제는 필요 없음) 인터 페이스 클래스와 구현 클래스 인터페이스 이름은 접두어를 붙이지 않는 편이 좋다고 생각했다. 자신의 기억력을 자랑하지 마라 클래스 이름 : 객체 이름이나 명사구 메서드 이름 : 동사나 동사구 기발한 .. 책 리뷰/클린코드 2023. 5. 4. 이전 1 다음