'Java 7'에 해당되는 글 2건

  1. 2008.04.12 Java 7의 자바 Module System
  2. 2008.04.09 Spring Dynamic Module 개발 환경

틈틈히 OSGi를 공부하기 위해서, 여러 사이트를 돌아다니면서, 알지 못했던것들을 배우게 된다. 친절하게도 자세하게 설명해주신 모든 분께 감사드린다.(사실 친분은 없지만, 그래도...)

http://www.osgian.com/ 의 자바 모듈 시스템 이라는 글을 보면 자바 7의 새로운 모듈 시스템에 대한 글이 있다. 기존의 자바의 모듈 시스템은 몇 가지 문제점을 안고 있다.

   [기존의 문제점]
    1. 제한된 Scoping Mechanisms
    2. 기본적이고 제한된 기능의 버전관리
    3. 모듈간 의존선(Implicit Dependency)문제
    4. 패키지에서이 단순한 Class path 관리
    5. 불분명한 Class Space Consistency

이러한 문제들은 자바 플랫폼에서의 모듈이라는 실행단위가 명확하지 않기때문이라고 결론을 내리고 있다.(위의 자바 모듈 시스템 링크 참조)
그래서 JSR 277을 통해 이를 개선하려 하고 있다.

    [문제점의 개선사항]
    1. 버전관리(Version Management)
    2. 배포(Distribution) 및 패키징 (Packaging)
    3. 새로운 저장소 (New Repository)
    4. 모듈간 공유 및 연결성 (Module Interconnection)


이는 OSGi 모델을 자바 플랫폼에서 구현하려는 노력의 결과물인데, 이로 이해서 기존에 사용되고 있던, .jar 포맷의 파일은 .jam 포맷의 새로운 파일을 탄생시키게 된다.
물론 이는 자바 7 을 통해서 반영될 수 있을 것이다.

자바는 진화하는 언어임이 분명하다!

Posted by 행복상자

Spring Framework에 대한 관심이 어느때보다 높다.
단지, 유행의 차원을 넘어서서, 개발 효율을 한단계 높일수 있는 계기가 될거라 생각하는 많은 SI업체들이 경쟁적으로 도입하고 있다. 최근 내가 근무하고 있는 회사에서도 일부 도입하여 개발하는 팀도 생기고 있고, 도입을 고려하고 있는 팀도 있다.
내가 속해 있는 팀은 후자에 속한다. 개발의도는 기본적으로는 재활용성을 극대화 하여 모듈간의 의존성을 줄이면서도 중복 개발을 피하려는 의도가 포함되어 있다.

이미 아는 사람들은 알고 있겠지만, Spring Dynamic Module은 기존의 Spring OSGi에서 변경되었다. (Spring Dynamic Modules for OSGi Service Platforms이 Full Name이고 약어로는 Spring-DM으로 사용된다.)
위에서 잠깐 언급하였지만, 현재 진행하고 있는 프로젝트는 Spring Framwork의 여러 부분들과 Spring-DM을 적극 도입하려고 검토하고 있다.

최근에 호주로 간 Toby(일민)이와 채팅을 통해서 어떤 부분들을 공부해야 하는지 의견을 나누었었다.  OSGi에 대한 무지한 내가 어떤식으로 접근해야 하는지 정말 막연했는데, 여러가지 정보들을 얻을수 있었다. 이는 나중에 기회가 되면 따로 정리할 것이다.

Spring-DM은 Java 1.4와 OSGi 4.0이 필요하고 Spring 2.5 또한 필요하다.
OSGi는 일반적으로 Eclipse-equinox가 추천되고 있다. 이미 아는 사람들은 다 알겠지만, Eclipse IDE 3.x는 OSGi를 기반으로 설계되어 개발되었고, 이미 수백만 개발자들이 다운받아 사용하고 검증한 OSGi의 가장 성공한 Case model이다. 그리고, Spring Framework 2.5도 OSGi 번들로 개발되어있다.

이런점에서 Eclipse-Equinox는 OSGi를 분석하고 공부하는데 분명 큰 도움이 될것이다.

Posted by 행복상자