JavaFX | FXML GUI 디자인 | FXML이란?

JavaFX는 풍부한 GUI를 가진 응용 프로그램을 빠르게 개발할 수 있는 것을 중시하고 새롭게 만들어진 GUI 라이브러리이다. 하지만, 지금까지 본 바로는 “Swing과 별로 변함이 없다"라는 인상을 받았을 것이다. 액션 이벤트의 설정 등은 간단했지만 “이정도라면 일부러 Swing에서 마이그레이션 할 필요도 없다"고 느낀 사람도 많을 것이다.

사실 JavaFX는 Java 클래스를 만들어 Java 소스 코드에서 GUI를 만드는 방식은 그다지 많이 하지는 않다. 그 이상으로 중요시되고 있는 것이 “FXML"라는 것을 이용한 GUI 디자인이다.

FXML은 JavaFX에 포함되어 있는 XML 기반의 GUI 기술 언어이다. “언어"라고 하지만 XML 기반의 마크 업 언어이기 때문에, Java 소스 코드를 작성하는 것보다 기술은 매우 간단하다. 이용하는 컨테이너 및 컨트롤의 내용을 XML 기반으로 기술하는 것만으로 GUI를 디자인 할 수 있다. 이후에는 Java 측에 이것을 읽어 표시하는 짧은 코드를 작성하는 것만으로 본격적인 GUI 애플리케이션을 만들 수 있다.

JavaFX Scene Builder에 대해

FXML가 XML 기반으로 기술 할 수 있는 장점은 단순히 “쓰기 쉽다” 것만 있는 것이 아니다. XML 기반이기 때문에 분석이 쉽고, 각종 도구 등에 의해 디자인이 쉽다는 것도 있다. 실제로 Java의 개발 업체인 오라클에서는 “JavaFX Scene Builder"라는 FXML에 따르는 GUI 디자인 도구를 제공하고 있다.

이 도구는 마우스로 부품을 드래그하여 배치하는 것만으로 FXML 소스 코드를 작성할 수 있는 도구이다. FXML의 이용은 이러한 GUI 디자인 도구의 사용이 필수적이라고 할 수 있다. 우선 이러한 도구를 사용할 수 있도록 해두자.

JavaFX Scene Builder 다운로드 위치 :

http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html