고운소프트 / 뉴스 / 고운플랫폼 1.8.2 릴리즈

소프트

고운소프트 / 뉴스 / 고운플랫폼 1.8.2 릴리즈

리치 앱

뉴스 > 내용보기

 
목록 | 이전 | 다음

제목 : 고운플랫폼 1.8.2 릴리즈

글쓴이: 고운소프트 | 게시한 날짜: 2018-01-23
| 열람수: 2 | 추천수: 0 | 비난수: 0

1. 코드 재작성

1.1. 람다식 적용

이전 버전과 비교하여 Java 8의 가장 큰 변화는 람다식(Lambda Expression)이라 할 수 있습니다.

웹 애플리케이션의 개발에서 MVC 패턴에서는 대부분의 코드가 절차적인데 반하여, 고운플랫폼의 리치앱은 이벤트 드리븐 프로그래밍(Event driven programming) 방식의 GWT로 개발되기 때문에, 이벤트 핸들러의 구현에서 코드가 다소 복잡해 질 수 있습니다.

특히, 중첩된 이벤트 핸들러가 있는 경우, 코드의 실행흐름을 이해가 매우 어렵게 되는데, 람다식을 사용하면 이러한 부분에서 특히 도움이 됩니다.

GWT 2.8 부터 Java 8을 사용할 수 있게되어, 고운플랫폼의 많은 코드가 Java 8로 재작성 되어 개발자에게 보다 참조하기 쉽도록 정리되었습니다.

1.2. JsInterop

JsInterop는 GWT 2.8의 핵심기능 중 하나로 Java와 JavaScript간의 상호참조를 가능하게 해 주는 기술입니다.

GWT 애플리케이션이 비록 Java로 작성되지만 이것의 런타임 플랫폼은 웹 브라우저이므로 JavaScript로 컴파일되어 동작합니다. JsInterop 이전에는 JavaScript와의 상호참조를 위해 JNSI를 사용하여 비교적 난해한 코드를 작성해야 했지만, 이제는 Java의 어노테이션(annotation)을 사용하여 보다 쉽게 작성할 수 있습니다.

웹 애플리케이션 기술이 HTML5에 집중되어 있지만, GWT는 HTML5보다 Java, JavaScript 컴파일러 기술에 집중되어 있는 듯 합니다. 이 때문에 GWT의 주요 API에는 HTML5관련 API가 모두 구현되어 있지 않습니다. 따라서, 최신의 웹 브라우저에서 동작하는 화려한 애플리케이션 개발을 위해서는 관련 API나 콤포넌트를 직접 개발해야 합니다.

고운플랫폼의 리치앱은 이번 버전에서 JNSI를 사용하던 상당수의 코드를 JsInterop로 재작성 하여, GWT 차기 기술변화에 대비하였습니다.

2. 라이브러리 의존성 최적화

고운플랫폼은 JSP와 GWT 애플리케이션이 혼용되어 구성되어 있습니다.

이전에는 GWT 애플리케이션을 별도로 컴파일하고, 이 후에 JSP 뷰에 적용하는 식으로 개발이 진행되어, 개발에 어려움이 많았었습니다. 이제는 GWT DevMode에서도 JSP를 사용할 수 있기 때문에 개발의 능률을 향상시킬 수 있습니다.

이를 위해 고운플랫폼을 구성하는 라이브러리의 의존성 최적화 과정에는 컴파일러 버전까지 검토하는 작업이 있었습니다.