출처 : 토비의 스프링 3.0(책/도서)



POJO란 무엇인가?

스프링 애플리케이션 개발의 핵심인 POJO를 좀 더 자세히 알아보자. POJO는 Plain Old Java Object의 첫 글자를 따서 만든 약자이다. 최근 몇 년간 자바에서 유행어처럼 사용되고 있는 이 단어는 마틴 파울러(Martin Fowler)가 2000년에 컨퍼런스 발표를 준비하였다가 만들어낸 용어라고 한다.


그런데 POJO라는 용어를 만들어낸 이유가 재미있다.


마틴 파울러는 당시 인기를 끌고 있던 EJB처럼 복잡하고 제한이 많은 기술을 사용하는 것보다는 자바의 단순한 오브젝트를 이용해 애플리케이션의 비즈니스 로직을 구현하는 편이 낫다고 생각했다. 그럼에도 왜 개발자는 자바의 단순한 오브젝트를 사용하길 꺼리는지 궁금했다. 그 이유를 찾아보니 평범한 자바오브젝트에는EJB와 같은 그럴싸한 이름이 없기 때문이었다. 그래서 뭔가 있어 보이도록 만든 이름이 바로 POJO였다. 같은 설명이지만 그냥 "간단한 자바오브젝트를 사용하는데요"라고 말하는 것보다는 "POJO 방식의 기술을 사용합니다."라고 하면 왠지 세련되고 첨단기술을 쓰는 것처럼 느껴진다는 심리를 이용한 것이다. 평범한 자바오브젝트에 멋진 이름을 붙여줬던 시도는 기대 이상으로 성공적이었다.


단지 POJO라는 폼 나는 이름 떄문만은 아니겠지만, 아무튼 그 이후로 POJO 프로그래밍에 관한 개발자들의 관심이 놓아졌고 POJO를 지원한다는 걸 장점으로 내세우는 많은 프레임워크와 기술이 쏟아져 나오기 시작했다. 심지어 EJB조차 3.0에서는 기존의 문제점을 반성하고 POJO프로그래밍의 장점을 적극 도입하려고 했다.

출처 http://en.wikipedia.org/wiki/Plain_Old_Java_Object

In computing software, POJO is an acronym for Plain Old Java Object. The name is used to emphasize that a given object is an ordinary Java Object, not a special object, and in particular not an Enterprise JavaBean. The term was coined by Martin Fowler, Rebecca Parsons and Josh MacKenzie in September 2000:

"We wondered why people were so against using regular objects in their systems and concluded that it was because simple objects lacked a fancy name. So we gave them one, and it's caught on very nicely."[1]

The term "POJO" is mainly used to denote a Java object which does not follow any of the major Java object models, conventions, or frameworks such as EJB. The term continues the pattern of older terms for technologies that do not use fancy new features, such as POTS (Plain Old Telephone Service) in telephony, and PODS (Plain Old Data Structures) that are defined in C++ but use only C language features, and POD (Plain Old Documentation) in Perl. The equivalent to POJO on the .NET framework is Plain Old CLR Object.

 


결론, 그냥 자바다.

'Languages > Java' 카테고리의 다른 글

AWT, Swing 이클립스에서 실행시 한글 깨짐  (0) 2012.06.29
Java API 모음  (0) 2012.06.25
간단한 암호화 모듈  (0) 2012.06.25
EJB란?  (1) 2012.06.21
History of Java  (0) 2012.06.21

WRITTEN BY
GrimReaper
안녕하세요 Grim Reaper의 티스토리에 오신 것을 환영합니다.

,