전공공부/자바 (JAVA)

[JAVA] POJO

jooona 2022. 3. 8. 10:56
반응형

POJO란?

 

Pojo란 Plain Old Java Object의 약자이며, 위키백과의 정의를 빌려오자면 오래된 방식의 간단한 자바 오브젝트라는 뜻입니다.

 

오래된 방식의 자바 오브젝트...라고 하면 무슨 말인지 잘 감이 안옵니다. 그래서 풀어서 설명하자면, 특정 환경이나 기술에 종속되지 않는 순수한 자바 객체라고 할 수 있습니다. 

 

 

POJO의 등장 배경

 

POJO는 각종 프레임워크들을 사용하게 되면서 객체가 점점 무거워지기 시작하자 이에 반발하여 나온 개념입니다. 자바 객체들이 특정 환경과 특정 기술에 종속되어 의존성이 커지게 되자 객체지향 언어 고유의 장점인 가독성, 유지 보수 등에 오히려 어려움을 겪게 되었기 때문입니다. 자바 객체를 왜 사용하는지를 다시 처음으로 돌아가서 잘 생각해보자라는 뜻이 있을 수 있을 것 같습니다.

 

 

POJO의 특성

 

그렇기 때문에 자바의 객체지향 특성을 잘 살릴 수 있도록 특정 규약, 특정 환경에 종속되지 않으면서, 객체 지향적인 원리에 충실한 객체를 POJO라고 부를 수 있습니다. 대표적인 예시로는 getter, setter를 가지는 단순한 자바 객체를 들 수 있습니다. 

 

종종 getter, setter를 가지는 자바 객체만이 POJO라고 부를 수 있다고 착각하시는 분들이 있는데, 이는 조금 틀린 말입니다. 위에서 말한 POJO의 특성을 잘 만족한다면 POJO라고 부를 수 있고, getter, setter를 가지는 자바 객체는 그중 한 예시일 뿐입니다.

 

 

POJO 사용의 장점

 

1. 자바의 객체지향적 장점(가독성, 유지보수, 재활용성)을 잘 살릴 수 있다.

2. 테스트의 간편성.

반응형