410013796724260
• Webmoney
R335386147728
Z369087728698
Уроки изучения JaBricksПредисловие
Изучение JaBricks лучше всего начать с уроков. Необязательно следует сразу же приступать к их
выполнению. Достаточно внимательно просмотреть решения задач. Описание уроковВ таблице представлены уроки, которые позволят быстро и с минимальными затратами изучить платформу JaBricks. После освоения уроков Вы будете самостоятельно :
Список уроков
Описание уроков построено таким образом, что на данной титульной странице представлены только задания. В конце каждого урока имеется ссылка, по которой Вы можете перейти на страницу выполнения урока, включающую описание решения. Кроме этого, на странице выполнения имеется контент для скачивания решения и задание для повторения темы урока. I. Определение структуры, настройка конфигурации, бандлы формирования интерфейсаДанный раздел включает 8 уроков, в которых Вы должны изучить структуру приложения, научиться создавать «Панель инструментов» и «Главное меню», подключать к приложению готовые бандлы и узнать назначение основных бандлов создания интерфейса. «Формирование» приложения будет связано исключительно с определением структуры панели инструментов и/или главного меню во внешних XML-файлах конфигурации. Программирование данный раздел не предполагает. Таким образом, как в детском конструкторе, из готовых бандлов Вы научитесь собирать и изменять функциональные свойства приложения, т.е. научитесь управлять конфигурацией. В заключительном уроке данного раздела Вы соберете готовое приложение, позволяющее динамически подключать и стартовать бандлы, а также мониторить сообщения OSGi-фреймворка. Урок 1. Структура приложенияЗадание. Необходимо создать структуру базового приложения JaBricks. В директорию конфигурации необходимо загрузить минимально необходимый набор бандлов и бандл фрейма. Все бандлы необходимо зарегистрировать в файле «configuration/bundles.ini». В файле инициализации приложения «jabricks.ini» необходимо определить язык локализации «lang» ['ru' | 'en' | 'de'] и установить флаг вывода сообщений в консоль «log.console». После старта приложения Вы должны увидеть следующий интерфейс для языка локализации 'ru' : В консоль будут выведены сообщения об инициализации и старте соответствующих бандлов. Перейти к решению задачи. Урок 2. Панель инструментовЗадание. Необходимо создать панель инструментов с тремя кнопками, как это представлено на следующем скриншоте. Одну кнопку необходимо расположить слева на панели инструментов, а две другие – справа. При нажатии на левую кнопку («Панель») необходимо стартовать интерфейсный бандл с панелью, встраиваемую в контейнер главного фрейма (представлена на заднем фоне). При нажатии на правую кнопку «Диалог» необходимо открыть диалоговое окно, представленное на переднем фоне. А при нажатии на кнопку «Выход» – завершить работу приложения. После старта приложения и нажатия на кнопки Вы должны увидеть следующий интерфейс : Перейти к решению задачи. Урок 3. Главное менюЗадание. Необходимо создать главное меню, как это представлено на следующем скриншоте. При выборе пункта меню «Панель» необходимо стартовать интерфейсный бандл с панелью, встраиваемую в контейнер главного фрейма (представлена на заднем фоне). При выборе пункта меню «Диалог» необходимо открыть диалоговое окно, представленное на переднем фоне. А при выборе пункта меню «Выход», либо нажатии горячих клавиш Alt-X – завершить работу приложения. Отличие данного урока от предыдущего связано с использованием «Главного меню» приложения вместо «Панели инструментов». После старта приложения и выбора указанных пунктов меню Вы должны увидеть следующий интерфейс. Раскрыть можно только один из пунктов меню «Файл» или «Справка», одновременно нельзя раскрыть оба пункта меню. На скриншоте выполнено «совмещение» изображений, чтобы более понятной была суть задачи. Перейти к решению задачи. Урок 4. МноговерсионностьЗадание. Необходимо, используя конфигурацию второго урока создать панель инструментов из пяти кнопок. Две кнопки расположить на панели инструментов слева и связать их с однотипными бандлами разных версий, размещающих во фрейме свои интерфейсные панели. Три кнопки расположить в правой части панели инструментов. К двум правым кнопкам также подключить однотипные бандлы разных версий, открывающих при старте диалоговое окно. К третьей кнопке подключить бандл «О программе». После старта приложения и нажатии кнопок «Панель-1», «Диалог-1» и «О программе» Вы должны увидеть следующий интерфейс. Перейти к решению задачи. Урок 5. Локализация интерфейсаЗадание. Необходимо собрать приложение с интерфейсными бандлами (templ-jpanela, templ-jdialoga, form-about), включающих метки, кнопки, таблицы, и «подписывающихся» на сообщения динамической локализации «jabricks/LocaleEvent». Динамическое изменение локализации выполнить бандлом form-locale после старта всех интерфейсных модулей. Перейти к решению задачи. Урок 6. Регулируемые настройки интерфейсаЗадание. В этом уроке необходимо познакомиться с содержимым динамически формируемой поддиректории gui и узнать, как она создается и что за файлы записываются и обновляются в этой поддиректории. Перейти к описанию. Урок 7. Блокирование доступа к конфигурацииЗадание. Одна из функций платформы JaBricks связана с закрытием доступа к конфигурации приложения, блокирующая возможность расширения или изменения функциональных свойств. В этом уроке необходимо выполнить блокировку доступа к конфигурации приложения. Перейти к решению задачи. Урок 8. Динамическое подключение модуляЗадание. После выполнения предыдущих уроков Вы должны ориентироваться в конфигурации платформы JaBricks. В данном заключительном уроке первого раздела необходимо из готовых модулей собрать приложение, позволяющее выполнять динамическое подключение (инсталляцию), старт, останов и отключение бандлов. Перейти к решению задачи. 2. Работа с базой данныхДанный раздел включает 2 урока, в которых Вы должны из готовых бандлов собрать приложение взаимодействия с сервером базы данных (БД). Используемые в уроках готовые бандлы позволяют подключаться к серверам БД, создавать в БД справочные таблицы, а также через интерфейсные формы управлять записями (добавлять, обновлять, удалять). Вы сможете загрузить в интерфейс приложения список табличных объектов БД и постранично просматривать их записи. Таким образом, из готовых бандлов Вы соберете приложение управления справочниками и просмотра их записей в базе данных. Урок 9. Подключение к серверу БДЗадание. Необходимо создать приложение с возможностью подключения к серверу БД и просмотром таблиц. Для подключения к серверу БД использовать бандл db-connection, который зарегистрируйте с атрибутом @start. Просмотр таблиц БД и их записей выполнить с использованием бандла db-objects. Для старта бандлов используйте главное меню. После старта приложения сразу должно открыться окно авторизации, т.е. должен стартовать бандл db-connection. При успешной авторизации откройте окно просмотра таблиц БД. Если Вы повторно откроете окно авторизации, то увидите, что бизнес-логика db-connection блокирует повторное подключение к серверу БД и позволяет только отключиться от сервера БД. На скриншоте представлен интерфейс приложения после выполнения описанных действий. Перейти к решению задачи. Урок 10. Справочники базы данныхЗадание. Необходимо из готовых модулей собрать приложение, позволяющее подключиться к серверу БД и управлять справочниками единиц измерения, валют и курсов валют ЦБ. Для старта бандлов используйте главное меню. Данный урок является продолжением предыдущего урока, где уже выполнено подключение к серверу БД и просмотр табличных объектов. Необходимо дополнительно подключить 3 бандла, реализующих функции справочников БД. Перейти к решению задачи. 3. Разработка бандловВ разделе рассматриваются вопросы создания новых интерфейсных бандлов, т.е. бандлов, созданных по технологии OSGi и включающих интерфейсные формы. В качестве основы данных модулей будем использовать базовые модули платформы JaBricks, которые позволяют значительно сократить трудозатраты. Создадим три интерфейсных бандла, формирующих главный фрейм, диалоговое окно и панель. Урок 11. Главный фреймЗадание. Необходимо создать главный фрейм приложения с использованием проектного шаблона templ-jframe. Перейти к решению задачи. Урок 12. Диалоговое окно JDialogЗадание. Необходимо создать интерфейсный бандл, открывающего диалоговое окно JDialog, с использованием проектного шаблона templ-jdialog. Перейти к решению задачи. Урок 13. Интерфейсная панель JPanelЗадание. Необходимо создать интерфейсный бандл, формирующего панель JPanel, с использованием проектного шаблона templ-jpanel. Интерфейсную панель разместить в контейнере главного фрейма. Перейти к решению задачи. Урок 14. Интеграция бандловЗадание. Необходимо с использованием базового модуля 'base-iniversal' создать бандл, позволяющий формировать интерфейс как в отдельном диалоговом окне, так и в панели главного фрейма, а также позволяющий интегрировать свою форму в интерфейс другого бандла. На скриншоте представлен бандл templ-universal версии 2.0.0, разместивший свою интерфейсную панель в главный фрейм приложения. На переднем фоне этот же бандл, но собранный с версией 2.0.1, создал свой интерфейс уже в виде всплывающего диалогового окна. Перейти к решению задачи. 4. Создание диаграммВ разделе рассматриваются вопросы создания различных видов диаграмм с использованием библиотеки osgi-jfreechart-1.0.19.jar и утилиты util-jfreechart. Урок 15. Столбчатые и круговые диаграммыЗадание. Необходимо создать интерфейсный бандл представления столбчатых и круговых диаграмм с использованием библиотеки osgi-jfreechart и утилиты util-jfreechart. Перейти к решению задачи. Урок 16. Временны́е и линейные диаграммЗадание. Необходимо создать интерфейсный бандл представления временны́ (линейных) и кусочно-линейных диаграмм с использованием библиотеки osgi-jfreechart и утилиты util-jfreechart. Перейти к решению задачи. 5. Дополнительные возможностиУрок 17. Динамический старт бандловЗадание. Определить конфигурацию приложения с динамической загрузкой интерфейсных бандлов. В качестве прототипа приложения использовать конфигурацию 4-го урока. Перейти к решению задачи. |