본문 바로가기
반응형

전체 글118

멀티모듈로 헥사고날 구현[1] - 모듈 구성 멀티모듈로 헥사고날 구현[1] - 모듈 구성멀티모듈로 헥사고날 구현[2] - application layer를 pojo로 구성하기헥사고날 아키텍쳐 패턴을 멀티모듈 방식으로 구성한 방식에 대해 공유해보겠다.아키텍쳐에 기반한 모듈 구성과 그 역할에 대해 1편에서 소개하고,2편에서는 application layer를 pojo 방식으로 구현한 방법에 대해 소개하겠다. 모듈 구성  헥사고날 아키텍쳐를 간단하게 설명하면비즈니스 로직을 갖는 application core와 클라이언트와 소통하는 user interface, 그리고 application이 필요로하는 툴(DB, 3rd-party-api)을 사용하는 infrastructure 영역으로 구분된다.비즈니스 로직은 순수한 프로그래밍 언어로 작성되며 어떠한 라이브.. 2024. 3. 10.
자바 예외의 종류와 처리방식 Error와 Exception자바에서 프로그램이 비정상적인 동작을 일으키는 경우 Error 또는 Exception이 발생하게 된다. ErrorExceptionChecked ExceptionUnChecked Exception복구 여부복구 불가복구 가능예외 종류컴파일 타임- 문법 오류- 타입 체크IOException 런타임- StackOverFlowError- OutOfMemoryError Runtime Exception 하위예외 처리처리불가 컴파일러에 의해 예외 처리 강제예외 처리 강제화 되지 않음 예외 상속관계 Error와 Exception은 모두 Throwable 클래스를 상속 받는다Throwable 클래스는 message와 stackTrace를 담고 있다.message는 Error와 Exception.. 2024. 2. 19.
템플릿 메서드 패턴, 전략 패턴, 템플릿/콜백 패턴 비교 분석 프레임워크는 개발자가 구현한 코드를 알고리즘의 토대 안에서 동작하도록 한다.이렇게 특정 코드가 다른 코드 속에 침투되어 동작하는 디자인 패턴의 대표적인 예로 템플릿 메서드 패턴과 전략패턴이 있다.템플릿 메서드 패턴과 전략 패턴은 모두 공통 로직에 대한 코드 중복을 해결하는 디자인 패턴 사례이다. 목차템플릿 메서드 패턴전략패턴템플릿 메서드 패턴과 전략패턴의 차이템플릿 콜백템플릿 콜백 패턴 적용 사례 : JdbcTemplate전략패턴과 템플릿 콜백 패턴의 차이 1. 템플릿 메서드 패턴템플릿 메서드 패턴은 상위 클래스에서 전체 알고리즘의 구조를 정의하고, 특정단계를 하위 클래스에서 재정의할 수 있는 디자인 패턴이다.이 패턴을 통해 전체 구조를 변경시키지 않고 특정 단계만 확장시켜나가며 구현할 수 있다.간단한 .. 2024. 2. 17.
컴파일 타임 의존성과 런타임 의존성 객체지향 프로그래밍에서는 객체간의 의존성이 빈번하게 발생한다.의존이란 상위 모듈(호출자)이 기능 수행을 위해 하위 모듈(피호출자)의 자원을 사용하는 것을 말한다.(하위 모듈의 변경사항이 상위 모듈에 영향을 끼침)이러한 의존관계의 설정은 컴파일 타임에 결정되기도 하고 런타임에 결정되기도 한다.컴파일 타임 의존성과 런타임 의존성은 말그대로 어느 시점에 의존성이 결정되느냐의 차이이다. 자바 프로그램이 실행될 때, 자바 파일이 컴파일러에 의해 컴파일 되고이후 jvm의 런타임 영역에 클래스 요소들이 적재된다.컴파일 타임은 컴파일러에 의해 컴파일이 이루어지는 시점을 의미하고,런타임은 클래스파일이 jvm의 런타임 영역에 적재된 이후의 시점을 의미한다.따라서 컴파일 타임 의존성과 런타임 의존성은 아래와 같이 구분할 수.. 2024. 2. 11.
반응형