📚 오늘 읽은 범위: 7장 오류 처리
📖 책에서 기억하고 싶은 내용을 써보세요.
• 깨끗한 코드와 오류 처리는 확실히 연관성이 있다. 상당수 코드 기반은 전적으로 오류 처리 코드에 좌우된다. (p.130)
• 오류 코드보다 예외를 사용하라 (p.130)
• Try-Catch-Finally문부터 작성하라 (p.132)
• 예외에 의미를 제공하라. 오류 메시지에 정보를 담아 예외와 함게 던진다. (p.135)
• 외부 API를 사용할 때는 감싸기 기법이 최선이다. 외부 API를 감싸면 외부 라이브러리와 프로그램 사이에서 의존성이 크게 줄어든다. 나중에 다른 라이브러리로 갈아타도 비용이 적다. 또한 감싸기 클래스에서 외부 API를 호출하는 대신 테스트 코드를 넣어주는 방법으로 프로그램을 테스트하기도 쉬워진다. 마지막 장점으로 감싸기 기법을 사용하면 특정 업체가 API를 설계한 방식에 발목 잡히지 않는다. (p.137)
• 메서드에서 null을 반환하는 방식도 나쁘지만 메서드로 null을 전달하는 방식은 더 나쁘다. (p.140)
🙇♂️ 오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.
• 코딩을 하다보면 많은 시간을 쓰는 것 중 하나가 오류와의 싸움이다. 그렇기 때문에 오류를 어떻게 처리하느냐가 코드의 완성도에 큰 영향을 미친다. 그래서 이 장을 최대한 이해하고 싶은데, JAVA 코드는 아직 100% 이해하기 어렵다. 천천히 반복해서 읽어야 할 것 같다.
🤷♂️ 궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
• 단위 테스트(Unit Test): 응용 프로그램에서 테스트 가능한 가장 작은 소프트웨어를 실행하여 예상대로 동작하는지 확인하는 테스트
- 통합 테스트(Integration Test): 단위 테스트보다 더 큰 동작을 달성하기 위해 여러 모듈들을 모아 이들이 의도대로 협력하는지 확인하는 테스트
- 인수 테스트(Acceptance Test): 사용자 스토리(시나리오)에 맞춰 수행하는 테스트
• TDD(Test Driven Development): 반복 테스트를 이용한 소프트웨어 방법론으로, 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현하는 테스트 주도 개발
• 미확인 예외(Unchecked Exception): 컴파일러가 확인할 수 없는 프로그램 코드에 의한 에러
• 특수 사례 패턴(Special Case Pattern): 특정 객체의 필드가 null일 가능성이 있다면 null을 처리하는 하위 클래스를 만들어서 처리하는 방식
댓글