среда, 5 июля 2017 г.

День четырнадцатый

FlowLayout - размещает все компоненты в одну строку
GridLayout - по сетке привязки
BorderLayout - делит UI - контейнер на 5 зон: север-юг-восток-запад-центр и распределяет компоненты по этим зонам
CardLayout - как колода карт, в которой видна только верхняя карта
BoxLayout - кидает как в ящик по вертикали либо по горизонтали
AbsoluteLayout - вручную
GridBagLayout - по сетке, но при этом указывает размеры/поведение для каждого компонента

Events and Listeners
Для обработки какого-либо события  (нажатие на кнопку, движение мышки, изменение размера и т.д.) необходимо создать для него специальный интерфейс - Listener. В таком интерфейсе объявляется специальный метод callback. 

Как это работает?
  • юзер нажимает на кнопку - т.е. происходит некоторое событие (event)
  • java runtime перехватывает это событие и ищет listener, назначенный на  это событие
  • java runtime вызывает callback из соответствующего событию listener-a
  • а уже после этого обрабатывается код, указанный для данного callback-a
Дизайн-паттерн - шаблон решения стандартной проблемы.
MVC (Модель-Вид-Контроллер) - разделение классов:
  • вид - те классы, которые отвечают за GUI
  • модель - содержит данные
  • контроллер - находится между видом и моделью. Реагирует на события и обрабатывает их.
 Внутренний класс -  находится внутри какого-либо класса и нигде больше не используется ( однако, при необходимости, к нему можно дать доступ извне). Компилируются в отдельный файл.

Java-апплеты - мелкие приложения, которые выполняются внутри браузера.

Комментариев нет:

Отправить комментарий