Сергей СОКОЛОВ, БГУИР
Развитиелюбой организации в сфере бизнеса, основанного на разработке программного обеспечения,зависит от количества проданных ею лицензий (прав на использование созданнойинтеллектуальной собственности). Как убедить потенциального пользователя купитьновую версию программы?
Оченьпросто — добавить к названию продукта «мудреные» красивые названиятипа: «визуальное», «виртуальное», «распределенное»и т.д. Большинство пользователей смутно понимают их реальное значение, но судовольствием покупают новое программное обеспечение.
Чтоозначает слово «визуальное»? Что скрывается за термином визуальноепрограммирование? На практике большинство людей вкладывают в этот терминсовершенно другое понятие. В качестве примеров обычно приводят средстваразработки программного обеспечения Visual Basic и Delphi.
Насамом деле эти средства не осуществляют визуальное построение программногообеспечения, а позволяют визуализировать процесс построения интерфейса. Самапрограмма — код функций и процедур, взаимодействующих с интерфейсом программы, «пишется»в обычном текстовом редакторе — усовершенствованном варианте командной строки.Поэтому о визуальном программировании в данном случае вести речь нельзя. В чемже тогда заключается визуальное программирование?
Разобратьсяв понятии термина визуального программирования можно только поняв назначениетермина «визуализация».
Визуализация- это процесс графического отображения сложных процессов (в данном случаепостроения) на экране компьютера в виде графических примитивов (графическихфигур). Визуализировать можно абсолютно любые процессы: управления, построения,рисования и т.д. Вы можете не подозревать, что простейший вариант визуализации- линейка прогресса (прямоугольник, процент заполнения которого прямопропорционален прогрессу выполнения какой-либо операции). Глядя на нее, выможете четко оценить оставшийся объем невыполненных операций.
Однакоесли вы выводите значение прогресса в виде числа со знаком процента — вы лишьотображаете текущее значение, и здесь нет никакой визуализации.
Визуализироватьможно интерфейсы программного обеспечения. Можно и нужно. Это позволяетупростить «общение» программного продукта с пользователем.Изображения на элементах интерфейса (внешнего вида программного обеспечения)позволяют пользователю интуитивно разбираться в назначении этих элементов.
Длявизуализации интерфейсов программного обеспечения существует целый рядспециально разработанных элементов интерфейса — визуальных компонент, позволяющихотображать различную информацию и осуществлять управление программой в целом.Простейший пример — визуальная кнопка на экране компьютера.
Даннаякнопка имитирует поведение обычной кнопки на пульте управления любого прибора.Ее можно «нажимать» как настоящую. Возможно, именно наличиевизуальных средств построения интерфейсов в Visual Basic и Delphi, а такжесоздаваемое ими визуальное программное обеспечение закрепили за ними термин«визуальное программирование». Безусловно, существует много другиханалогичных продуктов (Visual C++, Borland C++ начиная с версии 4, SymantecVisual Cafe, «сишный» вариант Delphi — C++ Builder и др.), но они несмогли завоевать такой популярности, как Visual Basic и Delphi.
Именноблагодаря любимому детищу Билла Гейтса — Visual Basic, мир узнал о возможностивизуального построения интерфейсов программ для Windows. Затем появился Delphi.Если Visual Basic целиком ориентируется на построение программ с визуальнымиинтерфейсами, то Delphi ориентируется на работу с базами данных. Последние годыходят мифы, что Basic — язык для начинающих. «Начинающие» воспринялиBasic как панацею от компьютерных бед…
Естьеще один способ доказать, почему в Visual Basic и Delphi осуществляют тольковизуальное построение интерфейса программы, а не самого кода. Определяющимиэлементами процесса визуализации являются:
Визуализируемаямодель — модель, которая подвергается отображению с целью возможности измененияее структуры или ее параметров (либо параметров ее отдельных частей).
Окноинструментов (Toolbox) — окно, содержащее набор элементов, из которых строитсявизуальная модель. Обычно элементы разделяются по их назначению на отдельныегруппы, размещающиеся на отдельных закладках окна инструментов. Окно свойств(Propertybox) — окно, в котором отображаются параметры (свойства) выбранногоэлемента визуальной модели. Термин «свойство» пришел изобъектно-ориентированного программирования и обозначает параметр объекта(элемента).
Визуализируемоймоделью в Visual Basic и Delphi является окно (форма, диалог) Windows, а не кодпрограммы.
Принятовизуализировать только работу с элементами интерфейса, когда в качествеобъектов визуализации рассматриваются визуальные компоненты, из которых состоятформы (окна и диалоги) интерфейса программы. Мало кому не приходит в головумысль, что и операторы программы можно рассматривать как объекты визуализации.
Тогдапараметры операторов и функций программы можно будет настраивать при помощиокна свойств (Propertybox). А сами операторы и функции будут храниться всписковой форме (табличной форме).
Вкачестве возможного варианта реализации такой визуальной разработки кодапрограммы можно рассматривать табличную форму записи макросов в Access. В этомслучае визуализируемая модель — макрос — программа управления данными в базеили процессом их отображения. Команды макроса находятся в разных строчкахзаписи макроса. Окно свойств находится непосредственно под списком команд. Окнаинструментов в привычном виде нет, но оно реализовано в виде комбобокса скомандами, т.е. в каждой строке записи макроса в отдельности имеетсявозможность выбора или смены текущей команды макроса.
Этои есть визуализированная форма записи программы. В одном из диалогов сМитасовым Андреем (ООО «Интелпарт») мы коснулись вопросов реализацииалгоритмической мультиязычности (КВ №45 за 1999). Интересен факт, что этотвопрос и визуальное программирование связаны между собой.
Визуализированнаяформа записи программ обладает максимальной гибкостью и переносимостью.Преобразовать табличную форму записи в любой известный язык программированияявляется «делом техники».
Список литературы
Дляподготовки данной работы были использованы материалы с сайта my-pc.jino.ru/