Study/Spring

[Spring] 스프링의 역사

dev_kong 2023. 1. 11. 00:10
728x90
728x90

EJB의 몰락

옛날 옛적에는(2000년 초반) EJB라는 기술이 있었고,
이게 Java 진영의 표준이었다.


당연하게도 금융권을 포함한 모든 곳에서 널리 사용 되었고,
EJB이외의 오픈 소스들은 사파로 취급당했다.

 

그런데 EJB는 이론적으로는 굉장히 뛰어난 기술이었지만,
실제 사용하는 개발자들에게는 한숨메이커 였다고 한다.

 

일단 비쌌고, EJB에 굉장히 종속적으로 프로그래밍 할 수밖에 없어 객체지향적인 설계가 불가능했고,
테스트를 하기에도 힘들거나 아예 불가능 했다고 한다.
게다가 느리기까지.

총체적 난국이었다.

 

이외에도 여러 단점들이 있었다고 하는데,
그래도 어쩌나 이거 안쓰면 사파 취급당하니..
눈물을 머금고 어거지로 썼다고 한다.

 

 

그러다가 참다 참다 폭발한 두명의 개발자가 판을 흔들기 시작한다.


Hibernate의 창시자 개빈킹
Spring의 기반을 닦은 로드 존슨

 

JPA

EJB에는 엔티티빈이라 불리는 ORM 기술이 있었는데,
굉장히 조악했다고 한다.

 

이걸 사용하다가 빡퉁이 오른 개빈 킹.
여기저기 토로해보지만, "꼬우면 직접 만들던지" 라는 대답을 듣곤,

직접 만든다.

 

그래서 만들어 진게 Hibernate
사람들은 환호했다.

이거 한번 써보니까 선녀가 따로없다.


발싸개같던 엔티티빈을 내팽게치고,

하이버네이트를 자신들의 프로젝트에 적용하기 시작한다.

 

이를 유심히 지켜보던, Java 진영 깊은 고민을 하다가 결국은..!


엔티티빈 내다 버리고, 개빈 킹을 영입하여 현재 Java ORM 표준인 JPA를 만들고 표준으로 지정한다.


(정확하게는 JPA의 구현체로 Hibernate를 사용함)

 

Spring

2002년 로드 존슨의 책이 출간되었다.


책의 제목은 Expert One-on-One J2EE Design and Development
한줄 요약하면, "얘들앜ㅋㅋ EJB 왜 쓰냐? 없어도 잘됨ㅋㅋ 오히려 좋아~" 였다.

안쓰면 그만이야~

 

사람들은 열광한다.

거지같은 EJB없이 애플리케이션을 만드는데, 이게 EJB로 만든것보다 성능이 좋다고??

개발자들 눈돌아가는 소리가 들린다.


실제로 로드 존슨의 저서는 EJB없이 충분히 고품질의 확장 가능한 애플리케이션을 개발 할수 있다고 말하며,
이를 증명하든 약 30,000 라인의 예제코드를 포함하고 있었다.

 

책이 선풍적인 인기를 끌고, 실제 프로젝트에서 로드 존슨의 저서에있는 예제코드들이 사용되기 시작한다.

이 책을 읽고, 크게 감명받은 두명의 개발자 유겐 휠러얀 카로프.

로드 존슨에게 오픈소스 프로젝트를 제안한다.

 

이렇게 시작된 오픈소스의 이름은 Spring
EJB라는 겨울을 지나 새로운 시작이라는 뜻이었다.

...여름 봄이었다...

 

로드 존슨의 책에 담겨있던 30000라인의 예제코드들은 Spring의 기반코드가 되었다.

 

 

728x90
728x90