Mar 28, 2009

Toward NetBeans application platform!

Всем известно, что в мире Desktop Java есть уже 2 платформы для построения тяжелых пользовательских приложений с богатым графическим интерфейсом. Прежде всего это eclipse platform и, набирающий последнее время популярность, NetBeans Rich-Client Platform. Недавно я наткнулся на несколько примеров миграции приложений на платформу NetBeans. Прежде всего это SQuirreL SQL Client - очень удобный универсальный SQL клиент ко всем популярным серверам баз данных. Он особенно полезен, когда необходимо работать одновременно с несколькими базами. Последние 2 версии (начиная с 3.0.0) этот замечательный клиент получил новый GUI. Теперь он может похвастаться очень удобными и функциональными "табами", которые позаимствованы у NetBeans. Похоже оттуда же взят механизм обновления модулей. Это тоже очень удобная функция. Процесс обновления (проверенно на версии 3.0.1) стал быстрым и приятным. Для фанатов чистого MDI доступен старый вариант интерфейса. Другой пример - iReport. Это официальный дизайнер и редактор для популярной системы генерации отчетов JasperReports. Начиная с версии 3.1.2 программа полностью переписана на платформу NetBeans. Это глобальное изменение не прошло даром. С одной стороны мы имеем современный и функциональный интерфейс снаружи и модульную архитектуру внутри. Возможность интеграции редактора отчетов непосредственно в NetBeans IDE. С другой стороны очень сырой и нестабильный продукт (3.1.2 - 3.1.3). Редактор отчетов полностью изменен по виду и идеологии. В результате не стоит ожидать хорошо отточенного инструмента. Пока все очень не доделано и не додумано. Но использовать уже вполне можно. Много ошибок было исправлено в 3.1.4 версии. Собственно эта версия уже пригодна к применению в реальных проектах. Ваш покорный слуга уже успел создать в нем более 10 отчетов различной сложности, и все они успешно пошли в "продакшн". Буквально недавно (2009-03-25) вышла версия 3.5.0. Я ее еще не пробовал, но надеюсь, что там все будет работать еще лучше и стабильней. Особо хочется предупредить пользователей NetBeans IDE. Идея интеграции редактора отчетов в среду разработки очень заманчива, но я не советую прямо сейчас этого делать. Все мои попытки закончились плачевно. Установка модуля редактора отчетов, может привести к краху всего IDE или отдельных модулей. В последних версиях перестает работать Web Services Client. Поэтому пока безопаснее использовать iReport и NetBeans IDE отдельно. Постепенно я прихожу к заключению, что настало время внимательно взглянуть на платформу NetBeans и, возможно, начать ее использовать для клиентских приложений. Эта тема особенно актуальна в свете очень непонятного положения более легкого Swing Application Framework (JSR 296).

2 comments:

Unknown said...

Спасибо за информацию. Не знаю сколько людей это прочитало, но для меня это ценно. Только начал изучать java, как выясняется, что swing больше не развивается, проекты из разных IDE не совсем совместимы, javaFX еще не в едре и т.д. С чего начинать, непонятно. А изучать язык в консольном варианте как-то совсем уж скучно и лениво. Попробую netbeans RIA platform.

Illya Yalovyy said...

Спасибо за хорошие слова. JavaFX - очень сырое и неполное. Сам язык достаточно интересен, но возможности платформы пока сильно ограничены, скорость низкая, потребление памяти зашкаливает. Они там делают какие то промо-проекты, но в реальный проект я бы его не стал пока брать. Swing сильно устарел, но есть под него много библиотек, которые делают из него почти конфетку. Думаю, что освоить платформу NetBeans будет очень хорошей инвестицией своего времени. Судя по всему, Оракл будет эту платформу продвигать.