Поэтому система Swing называется «легковесной» и в системе Swing стало возможным создать набор отображений Look and Feel, которые разработчик может выбирать, не оглядываясь на операционную систему.
Кроме того, библиотека Swing реализует архитектуру MVC (Model-View-Controller) и дополняет библиотеку AWT такими компонентами интерфейса пользователя, как панель выбора цвета, индикатор состояния, переключатель, слайдер и спиннер, панель с вкладками, таблицы и деревья, расширенными возможностями компоновки компонентов, таймером, возможностью отображения HTML-контента.
Графическая система SWT (Standard Widget Toolkit) была создана в процессе работы над проектом Eclipse и является попыткой взять лучшее из архитектур систем AWT и Swing и предоставить возможность создания быстрых интерфейсов с отображением Look and Feel, как можно более полно соответствующим операционной системе, в которой они работают.
Архитектура системы SWT построена таким образом, что SWT-компоненты представляют собой лишь Java-оболочки графических компонентов конкретной операционной системы.
Для операционной системы, в которой отсутствует реализация какого-либо компонента, система SWT обеспечивает Java-эмуляцию.
Так в системе SWT достигается скорость работы и полное соответствие внешнему виду и поведению операционной системы.
Для создания интерфейса пользователя система SWT предоставляет такие компоненты как кнопки, включая флажки и переключатели, списки, метку, меню, текстовые области, диалоговые окна, индикатор прогресса, панель с прокруткой, слайдер и спиннер, таблицы и деревья, панель с вкладками, панель выбора даты, панели инструментов, встроенный Web-браузер, гиперссылку, а также обеспечивает компоновку SWT-компонентов, встраивание AWT-компонентов, отображение OpenGL-контента, печать, поддержку операций Drag and Drop, 2D-графики, технологии Win32 OLE.
Система JFace создана на основе системы SWT и реализует архитектуру MVC (Model-View-Controller), предоставляя такие компоненты как таблицы, деревья, списки, текстовую область и диалоговые окна, обеспечивая определение пользовательских команд независимо от их представления в интерфейсе пользователя, управление шрифтами и изображениями, помощь пользователю в выборе соответствующего содержания для полей в компонентах, выполнение длительных задач.
Мы рассмотрим создание SWT/JFace приложений с помощью инструментов Eclipse-плагина WindowBuilder.
Плагин WindowBuilder обеспечивает шаблоны кода для создания Java-приложений с интерфейсом пользователя на основе библиотек Swing, SWT/JFace, RCP и XWT, предоставляя визуальный графический редактор и большой набор Wizard-мастеров.