더북(TheBook)

2.7 자바 EE 핵심 원리

 

엔터프라이즈 애플리케이션 개발에 꼭 필요한 설계 사상과 디자인 패턴은 자바 EE의 핵심 원리를 구성합니다. ‘설정보다 관례(convention over configuration)’는 코드의 목표에 집중하고 유연함을 잃지 않고 개발을 단순화하자는 중심 설계 사상입니다. 그레일즈(Grails), 루비 온 레일즈(Ruby on Rails), 스프링 부트(Spring Boot) 같은 프레임워크에서는 이미 오랫동안(10년 가까이 된 것도 있음) 적용한 개념입니다. 이제는 자바 EE에서도 ‘설정보다 관례’ 방식으로 멋진 코딩을 할 수 있게 됐습니다.

자바 EE는 엔티티, 자바빈(JavaBean), 관리 빈(Managed Bean), 서블릿, 단순 객체 접근 프로토콜(Simple Object Access Protocol, SOAP), REST형 웹 서비스 등 휘하 컴포넌트를 십분 활용합니다. 이들 컴포넌트는 모두 “주입 가능한(injectable) 의존체입니다. 즉, 어떤 컨텍스트에 묶이든 안 묶이든 상관없이 이들의 생애 주기(초기화부터 삭제까지)를 컨테이너가 알아서 관리하고 의존체를 주입하는 식으로 다른 컴포넌트에 얽매이지 않게 합니다.

애플리케이션을 느슨하게 결합하면 확장성이 좋아져 기존 클래스를 새 클래스로 바꿀 때도 의존 관계를 가진 다른 클래스까지 바꿀 필요가 없습니다. 의존체 주입은 한 객체과 그 의존체를 분리하며 인터셉터(interceptor)는 비즈니스 관심사를 기술 관심사(예: 성능, 로깅) 및 횡단 관심사(cross-cutting concerns)(예: 보안)로부터 떼어놓습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.