드디어 오랜동안 기다렸던 Spring 2.5가 릴리즈 되었다.

spring25

지난 6월에 열린 SpringOne에서 7월말이면 Spring 2.1이 릴리즈 된다는 발표를 한 후로 한참을 기간을 넘기던 스프링2.1은 결국 좀 더 기능의 보강하(는척 하)는 명분을 가지고 2.5로 버전넘버 자체가 업그레이드 되서 이제야 릴리즈 되었다. 언제 스프링의 새버전 릴리즈가 약속한 때에 된적이 있었냐싶지만, 이번은 너무해도 정말 너무 했다. 2.1의 새로운 기능을 보고 그동안 준비하던 스프링 책의 내용을 전면 재구성하기로 결심하고 2.1이 나오기만 눈이 빠지게 기다리던 나는 결국 4개월의 스프링-타임을 보내고 11월에서야 제대로된 Spring2.5를 볼 수 있게 됐다.

 

과연 버전이 0.4가 한번에 늘어날 정도로 2.1에 비해서 2.5가 많은 기능이 추가되었는가?

아니다!

 

Spring 2.5의 새로운 기능목록을 보면 SpringOne에서 발표한 Spring2.1의 새 기능이라고 소개됐던 것에서 특별히 추가된 것이 없다. 기껏해야 "Full-featured", "Maximum convenience", "Completely revised"같은 수식어가 더 붙어있을 뿐이다. 그럼 왜 스프링 개발팀은 왜 4개월이라는 긴 시간을 더 소모해야 했을까?

 

내 추측이긴 하지만 그것은 Interfacce21(아니 이제 SpringSource)가 VC자금을 투자받고 본격적인 벤처비즈니스에 돌입하면서 마케팅적인 측면에서 여러가지가 고려된 것이 아닌가 생각된다. 이번에 추가된 기능을 살펴보면 코어쪽으로는 가장 기본이 되는 DI에 획기적인 기능추가가 있었다. 반대로 그다지 자주 사용되지는 않는 기능들이지만 대규모시스템에서 많이 필요로 하는 것을 고려한 기능들 – 예를 들면 WebSphere지원, JMS, JCA, RAR등의 기능보강등이 있다. 전자가 스프링의 저변확대를 위해서 새롭게 떠오른 경쟁상대 – Google Guice등 – 를 의식한 개발편의성의 보강이라면 후자는 Fortune Top 500에 대한 공격적인 마케팅을 하기 위해서 로드존슨이 실리콘벨리로 헤드오피스를 설립하고 이주하는 등의 과감한 결정을 한만큼 대형기업의 민감하고 현실적인 요구를 충족시킬 수 있는 기능의 보강이 필요하기 때문이라고 생각된다.

 

1.x시절부터 끊임없이 요구되었던 annotation기반의 DI설정기능은 스프링XML은 충분히 심플하다는 로드존슨의 주장으로 항상 묵살되어왔다. 하지만 EJB3와 Google Guice의 annotation-driven DI의 인기와 영향력 앞에서 드디어 과감하게 무너졌다. 사실 새로운 annotation-driven DI는 XML설정방식을 기계적으로 annotation에 옮긴 것이 아니다. 필요에 따라서 매우 세밀하고 의도적인 방식의 DI를 할 수 있는 상당히 새로운 개념이다. SpringOne에서 AD-DI가 처음 발표되었을 때 사람들의 반응은 사용된 어노테이션이 좀 어설프지 않느냐 하는 의견이 있었다. I21개발자 블로그에서 지속적으로 기능과 스펙의 변경이 소개되고, 이후에 포럼과 이슈트래커에서 많은 논의를 거쳐오면서 지금의 매우 완성도 있는 AD-DI가 나오게 된 것이다. Sandbox를 통해서 여러가지 새로운 편리한 신규 컨트롤러와 CoC등을 검토해오던 SpringMVC도 AD-DI의 확장개념의 좋은 케이스가 될 수 있을 것이다. 스프링은 매우 유연하다고(extremely extensible) 항상 강조해오던 로드 존슨의 말대로 AD-DI는 새로운 3-rd party또는 In-house의 extended AD-DI의 길을 열어주었다. Namespace방식의 XML설정 확장기능이 스프링 기반의 프레임워크, 솔루션에 많은 힘을 실어주었듯이 AD-DI도 Spring Portfolio의 확장에 큰 몫을 하지 않을까 하는 기대가 있다. 하지만 이렇게 다양한 방식의 설정방식을 어떻게 적용해야 하는지에 대한 best practice가 아직 충분히 알려지지 않았기 때문에 한동안 설정방식에 대한 혼란이 있지 않을까하는 약간의 우려가 있다. 지금 새롭게 작성하고 있는 스프링서적의 IoC/DI 파트에는 기초 개념과 함께 설정방식의 선택에 대한 참조할 만한 가이드를 삽입하려고 생각중이다.

 

스프링의 모듈-패키징 아키텍처의 뛰어남은 이미 일년전에 TSE에서 Juergen Hoeller가 충분히 잘 설명한 바 있다. 이제는 한걸음 더 나가서 스프링의 jar파일 자체가 그대로 하나의 완벽한 OSGi bundle로 사용될 수 있도록 재구성 되어있다. 스프링이 OSGi기반의 신규 미들웨어와 서비스에 적극적으로 사용되고 있는 것만 보아도 앞으로 다가올 OSGi기반의 플랫폼이 주도하는 시대에 스프링이 또 얼마나 큰 역할을 담당하게 될지 기대가 된다. JEE7의 전문가그룹에 대거 스프링 개발자들이 포진해 있다는 사실을 봐도 JEE7의 플랫폼 아키텍처의 모습이 대충 짐작이 가지 않는가?

 

부가적인 기능이긴 하지만 사실 내게 가장 반가운 신규기능 중의 하나는 바로 JUnit4의 지원이다. TestNG는 안쓰니까 상관없지만 메인 테스트 코드를 JUnit4를 이용해서 작성하면서, 스프링 테스트는 모두 JUnit3를 써야했던 불편함을 이제는 더 이상 겪지 않아도 될 것이다. 사실 SpringTest모듈의 클래스 계층구조가 JUnit4/3의 동시지원으로 구성하기에는 대대적인 수정이 필요하다는 Juergen Hoeller의 고민을 들은 적이 있다. 왜냐면 그 기초구성을 로드 존슨이 해놓은 것이라서 함부로 건드리기가 부담스러웠던 것 같다. 하지만 끊임없는 JUnit4/TestNG지원의 요구가 있었던 만큼 이번에는 확실하게 추가 되었다. 슬슬 Spring2.5 코드베이스를 살펴볼 생각인데 가장 먼저 테스트 모듈을 봐야하지 않을까 싶다.

 

아무튼 큰 부담을 가진 새 버전 개발에 아마도 평일과 주말 밤낮을 온통 쏳아야 했을 Juergen Hoeller와 코어팀 멤버들에게 박스를 보낸다.

 

그동안 블로그를 게을리 쓴데에 대한 보상으로, 앞으로 한동안 Spring 2.5의 새로운 AD-DI에 대해서 연재를 해볼까 싶다.

 

아아… 스프링이 그렇듯이 내 포스팅 시기는 예측할 수 없다 :p

Related posts:

  1. Spring Framework 1.1.3 released
  2. Spring Framework 1.1.2 released
  3. Spring 3.0 (29) M2 Released
  4. 나의 Spring Acegi Security Framework 학습기
  5. Spring Framework 3.0.3 릴리스 & 의존 라이브러리
  6. Java Web Framework 비교(Struts, Spring, WebWork, Tapestry, JSF)
  7. EasyMock 2.1 Released
  8. Hibernate 3.0 released!
  9. 스프링과 하이버네이트를 이용한 RAD프레임워크 – OSAF(OpenSprout App. Framework) 공개
  10. Application Framework 개발의 원칙
  11. A Framework is… / Kent Beck
  12. Spring 2.0의 XML확장기능 (1)
  13. 유쾌한 이슈처리 재촉 메일
  14. TSE에 못 간 당신이 할 수 있는 일 10가지 그리고 Spring In Action2판
  15. Spring 3.0 (35) Spring 3.0 Reference Document 공개

Facebook comments:

to “Spring Framework 2.5 Released”

  1. The Silent Shard This could in all probability be quite practical for many within your work I plan to will not only with my website but

  2. here are some hyperlinks to internet sites that we link to mainly because we consider they may be really worth visiting

  3. Every once inside a although we pick out blogs that we read. Listed beneath would be the most up-to-date sites that we pick

  4. please take a look at the web-sites we follow, which includes this one, as it represents our picks from the web

  5. It as a pity you don at have a donate button! I ad certainly donate

  6. You have mentioned very porn sites interesting points! ps nice web site.

  7. Here is a superb Weblog You may Uncover Intriguing that we Encourage You

  8. although web sites we backlink to beneath are considerably not associated to ours, we feel they are in fact really worth a go as a result of, so possess a look

  9. Wow, incredible blog layout! How long have you been blogging for? you made blogging look easy. The overall look of your site is excellent, as well as the content!

  10. Typewriter.. or.. UROPYOURETER. meaning аАа’аАТ‚аЂТ˜a collection of urine and pus within the ureter. a

  11. the time to study or check out the content or web sites we’ve linked to below the

  12. lot and never manage to get anything done.

  13. please check out the web-sites we comply with, which includes this a single, because it represents our picks through the web

  14. Why visitors still use to read news papers when in this technological world everything is accessible on net?

  15. although internet sites we backlink to beneath are considerably not associated to ours, we feel they’re basically really worth a go by way of, so possess a look

  16. This is a topic that as near to my heart Cheers! Exactly where are your contact details though?

  17. Sites of interest we have a link to

  18. You ought to join in a contest for starters of the highest quality blogs online. I will recommend this page!

  19. I value the article.Much thanks again. Really Great.

  20. that may be the finish of this write-up. Right here youll find some web pages that we feel youll enjoy, just click the links over

  21. Normally I do not learn post on blogs, however I wish to say that this write-up very compelled me to take a look at and do so! Your writing style has been surprised me. Thank you, quite nice post.

  22. Every after inside a while we select blogs that we read. Listed below would be the latest web pages that we pick out

  23. Here is a good Blog You might Locate Exciting that we Encourage You

  24. I really liked your blog.Really looking forward to read more. Cool.

  25. There is definately a great deal to find out about this subject. I really like all of the points you ave made.

  26. Say, you got a nice blog article.Really thank you! Want more.

  27. Delicate Rx can you buy cialis online Comprare Viagra In Spagna cialis generic canada buy brand name accutane

  28. please stop by the web-sites we adhere to, such as this one particular, as it represents our picks in the web

  29. I am so grateful for your article post.Much thanks again. Keep writing.

  30. Normally I don at read post on blogs, however I would like to say that this write-up very forced me to take a look at and do so! Your writing taste has been amazed me. Thanks, very great post.

  31. Nice info! Also visit my blog about Clomid challenge test

Leave a Reply to Royal CBD gummies Cancel reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

© 2017 Toby's Epril Suffusion theme by Sayontan Sinha