Индустрия программирования


Концепция визуального программирования в IBM VisualAge Smalltalk - часть 4



Для иллюстрации построим несколько простых приложений.

Список сотрудников. Построим приложение, позволяющее добавлять и удалять
сотрудников из списка.



Очевидно, что для создания такого приложения необходимы следующие детали: поле ввода,
список, две кнопки и что-нибудь для запоминания списка. В соответствие с принципом
визуального программирования поместим необходимые детали из палитры деталей
width=100 src="95_2.gif">
на рабочую область.
src="95_3.gif">

Для запоминания списка выбрана невидимая деталь Ordered Collection (Упорядоченная
коллекция), которая позволяет добавлять и удалять объекты любого типа. Логику
взаимодействия деталей можно описать следующим предложением: "При нажатии кнопки Add
добавить содержимое поля ввода в Упорядоченную коллекцию и отображать находящееся в
ней в Списке; при нажатии кнопки Remove удалить выделенный элемент Списка из
Упорядоченной коллекции". В соответствии с этим установим связи между деталями. При
нажатии кнопка генерирует событие 'clicked'
.Свяжем
это событие с действием 'add' (добавить), выполняемым Упорядоченной коллекцией
src="95_5.gif">.
src="95_6.gif">

Штриховая линия говорит о том, что параметр для вызываемого действия не указан. Так как в
коллекцию добавляется содержимое поля ввода, свяжем атрибут 'object' поля ввода с
атрибутом 'anObject' связи Кнопка-Упорядоченная Коллекция.
src="95_7.gif">

Для того, чтобы содержимое Колекции отображалось в Списке, соединим атрибуты 'items'
Списка и 'self' Коллекции. С кнопкой "Remove" поступим аналогично кнопке "Add", только
вызываемым действием Коллекции будет теперь 'remove', а его параметром - атрибут 'selected
item' Списка.



Мы создали законченное приложение, не написав ни единой строки программы, а всего лишь
визуально задав логику взаимодействия его компонент. Выполняется оно немедленно,
благодаря тому что базовым языком программирования системы является Smalltalk, который не
требует компиляции. Очевидно, что успех реальной разработки напрямую зависит от качества



Начало  Назад  Вперед