본문 바로가기
자바

객체지향 4. POJO JAVA, 마무리하며

by 호놀롤루 2022. 3. 10.

POJO (Plain Old Java Object)

순수한 자바 오브젝트를 뜻한다.

 

역사를 거슬러 올라가보면, 예전 EJB 인기를 끌고, 많이 사용하던 시절에는 단순한 자바 오브젝트를 사용해서 

개발하는 것이 아닌, EJB 종속적인 부분으로 개발을 진행

 

그로 인하여, Module 교체, 시스템 업그레이드시 종속성으로 인하여 불편함 발생

 

POJO 특징

1. 특정 규약에 종속되지 않는다.

특정 Library, Module에서 정의된 클래스를 상속 받아서 구현하지 않아도 된다.

POJO 되기 위해서는 외부의 의존성을 두지 않고, 순수한 JAVA 구성이 가능해야 한다.

 

2. 특정 환경에 종속되지 않는다.

만일 특정 비즈니스 로직을 처리하는 부분에 외부 종속적인 http request, session  POJO 위배한 것으로 

간주한다.

또한 많이 사용하고는 있지만 @Annotation 기반으로 설정하는 부분도 엄연히는 POJO라고  수는 없다.

 

POJO Framework

1. Spring, Hibernate

하나의 서비스를 개발하기 위해서는, 시스템의 복잡함, 비즈니스 로직의 복잡함  다양한 어려움을 맞이하게 된다.

위의  프레임워크는 객체지향적인 설계를 하고 있으며, 또한 POJO 지향하고 있다.

그러므로 개발자가 서비스 로직에 집중하고 이를 POJO 쉽게 개발할  있도록 지원하고 있다.

 

Chapter1 마무리하면서

자신의 코드에 if/else, switch 난무하고 있지 않은가?

책임과 역할이 다른 코드가 하나의 클래스에  들어가 있지 않은가?

절차지향적으로  개의 파일에 모든 코드를 넣고 있지 않은가?

내가 만든 객체가 재사용이 가능한가?

 

앞으로는 복잡한 엔터프라이즈 로직은 Spring, Hibernate 맡기고, 이들이 지향하는 

객체지향적 프로그래밍을 이를 사용하기만 해도 배울  있는 장점이있다.

그렇기에 스프링 프레임워크는 오랜 기간, 그리고  세계적으로 사랑 받는 이유이기도 하다.

댓글