2015년 9월에 javaone 2015가 열렸다. 

관련 자료의 대부분은 아래 싸이트에서 확인할 수 있다. 


https://events.rainfocus.com/oow15/catalog/oracle.jsp?event=javaone&search.event=javaoneEvent


대용량(scala/spark) 관련 내용이 좀 있었고, javafx와 javaee는 여전히 큰 포지션을 차지하였다. 그리고 java 기본, IOT, java8/java9, performance, jpa, microservice, rxjava 세션이 많았다. gradle, play2 , servlet 4, test, continuous delivery system, devops 내용은 생각보다 적었다. spring(spring boot소개는 한 개)과 google쪽은 아예 안나온 것 같다.  open jdk로 실제 서비스하는 사례들이 소개되었으며, 전체적인 내용에 대해서 좋은 느낌이 들었다.



인상적인 내용은 4 가지 정도 있었다.


1. CDI / Apache Deltaspike 

Spring 처럼 java ee에서 돌아가는 dependency injection 기반의 CDI와 CDI extension인 apache delta spike를 쓰는 사례가 많이 눈에 보였다.

https://deltaspike.apache.org/



2. JVM 클라 

Oracle JVM을 IOS에도 올릴 수 있다는 자료,

candy crash 클라 게임도 jvm 탑재했다는 자료가 있었다.



3. Pants 빌드 시스템 

scala를 좋아하는 3개 회사 트위터, 포스퀘어, 스퀘어 개발자들이 모여 java/scala 기반의 빌드 시스템을 2014년에 만들었다는데, 발표했다.

https://blog.twitter.com/2014/hello-pants-build 

http://pantsbuild.github.io/ 

https://github.com/pantsbuild/pants 



4. Graal (그랄) 프로젝트 

http://openjdk.java.net/projects/graal/ 

Graal를 기반으로 언어를 JVM 포팅할 수 있다는 내용이다.  R, python, smalltalk, ruby도 포팅할 예정이라고 한다. R의 경우는 GNUR이 너무 성능이 안좋아서 Graal 기반으로 FastR을 구현하고 있는데, 80 % 정도 compatible하다고 한다.


현재 oracle labs에서 주도적으로 만들고 있다. JVM 기반 위에서 동작하는 컴파일러는 구성하는 컴파일러와 VM을 제공한다. 아래 그림 보이시지만, 사실상 컴파일러/VM을 만들어주는 프로젝트인 거 같다. SSA, Guads, AST, method inlining, Optimization 막 나온다.






좀 더 관심있는 분은 아래 자료 보시면 좋을 것 같다.


https://wiki.openjdk.java.net/display/Graal/Publications+and+Presentations

http://openjdk.java.net/projects/graal/

http://www.javaworld.com/article/2078531/core-java/graal-java-compiler-would-enable-high-quality-code--efficient-memory-use.html

http://www.slideshare.net/ThomasWuerthinger/graal-truffle-ethdec2013

http://lafo.ssw.uni-linz.ac.at/papers/2015_CGO_Graal.pdf


Posted by '김용환'
,