Untitled
Java에서의 이슈
자바는 정적 타입 언어
모든 메소드가 하나의 클래스 내에 있어야 함
별로 이슈가 아닌 것 같지만, String이 담긴 Collection을 자신이 원하는 기준으로 정렬하고 싶을 때 다음과 같은 상황이 일어난다.
익명 이너 클래스를 사용하여 Comparator 인터페이스를 구현하는 방식을 사용해야 한다. 얼마나 수고스러운가...
속성과 메서드에 대한 기본 접근은 package private
원시타입(Int, Double 등)을 클래스와 다르게 취급
일관되지 않은 메소드
Array : length
String : length
Collections : size
Node Lists : getLength
Java와 다른 Groovy
Groovy는 모두 size로 통일되어 있다.
타입 타이핑은 옵션 (타입을 모르면 신경쓰지말고 def 키워드를 사용한다.)
위의 사용자 정렬 기준을 Groovy로 표현했을 때
모든 연산자들은 오버로딩이 가능하다. (메소드 호출로 해석됨)
연산자는 plus()를 사용
연산자는 minus()를 사용
String이든 Collection이든 이 연산자를 사용할 수 있다.
Last updated