카테고리 없음
그루비 1.6에 대한 기욤의 글
jintopark
2009. 2. 28. 21:01
기욤이 그루비 1.6에 대해 자세히 설명한 글이 InfoQ에 올라왔다. 가장 큰 변화는 속도 개선이라고 한다.
이 밖에도 @Immutable, @Lazy, @Delegate, @Newify, @Category, @Mixin, @PackageScope, @Grab 등이 있다.
이외에도 읽어볼만한 내용들이 꽤 있는데, 실전에서 적용해보지 않은 상태라 뭐라 말하기 힘들다. 재미있어보이거나, 적용해보게되면 또 올리겠다.
속도에 대해 ..
바라던 바고, 당연히 앞으로도 계속 진행해야 할 것이다. 현장에서 써보면 그렇게 많이 느리다는 생각은 들지 않는다.
다중 할당은 ..
가끔은 있었으면 하고 바랄 때가 있었다. 고마운 일이다.
어노테이션 완전 구현..
나는 잘 안쓰는 기능인데, 어쨌든 이번 버전부터 모든 기능을 지원하게 만들었다고 한다.
리턴 생략 (if,else, try,catch, finally)..
별로 좋아보이는 문법이 아니다. 패스
AST 변환..
꽤 재미있는 기능인데, 역시 익숙해지려면 시간좀 걸리겠다. 말로 설명하면 길고, 간단하게 예제중에@Singleton이라는 것을 보자
아래는 전형적인 싱글톤 클래스다
public class T { public static final T instance = new T(); private T() {} }한 줄이면 같은 코드를 만들 수 있다.
@Singleton class T {}이런 인자를 주면 어떻게 될까
@Singleton(lazy = true) class T {}생성되는 코드는 이런 식이 된다.
class T { private static volatile T instance private T() {} static T getInstance () { if (instance) { instance } else { synchronized(T) { if (instance) { instance } else { instance = new T () } } } } }
이 밖에도 @Immutable, @Lazy, @Delegate, @Newify, @Category, @Mixin, @PackageScope, @Grab 등이 있다.
이외에도 읽어볼만한 내용들이 꽤 있는데, 실전에서 적용해보지 않은 상태라 뭐라 말하기 힘들다. 재미있어보이거나, 적용해보게되면 또 올리겠다.