
580 Глава 20. Основы программирования
простых редакторов, визуально показывающих характеристики соответствующих
элементов. При этом вспомогательный исходный текст программы, ответственный
за создание
и
работу этих
элементов,
генерируется
НАП-срелой
автоматически, что
позволяет сосредоточиться только на логике решаемой задачи. В результате про-
граммирование во многом заменяется на проектирование
—
подобный подход на-
зывается еще
визуальным
программированием.
Компоненты достаточно легко создавать самостоятельно, поэтому в мире сегодня
распространяются тысячи бесплатных
и
платных компонентов для наиболее изве-
стных iMD-сред, из них формируются библиотеки компонентов
—
объектные ре-
позитории.
Компоненты выступают
в
роли «строительных кирпичиков», позволя-
ющих собирать готовое приложение с богатыми возможностями, написав всего
десяток строк исходного кода,
и
такой
компонентный подход
к созданию программ
считается очень перспективным, потойу что без лишних усилий и на законных
основаниях допускает
повторное использование
чужого труда.
Архитектура программных систем
В то
время как большинство автономных
приложений:
офисные программы, среды
разработки, системы подготовки текстов и изображений -- выполняются на одном
компьютере, крупные информационные комплексы (например, система автомати-
зации предприятия) состоят из десятков и сотен отдельных программ, которые
взаимодействуют друг
с другом по
сети,
выполняясь
на
разных
компьютерах.
В
таких
случаях говорят, что они работают в различной
программной
архитектуре.
Она
делится на следующие группы.
Автономные
приложения.
Работают на одном компьютере.
Приложения в файл-серверной
архитектуре.
Компьютеры пользователей системы
объединены в сеть, при этом на каждом из них (на
клиентском месте)
запущены
копии одной и той же программы, которые обращаются за данными к
серверу —
специальному компьютеру, который хранит
файлы,
одновременно доступные всем
пользователям (как правило, это базы данных). Сервер обладает повышенной
надежностью, высоким быстродействием, большим объемом памяти, на нем уста-
новлена специальная
серверная
версия операционной системы.
При одновременном обращении нескольких программ к одному файлу, например,
с целью его
обновления, могут возникнуть
проблемы,
связанные
с
неоднозначностью
определения его содержимого. Поэтому каждое изменение общедоступного файла
выделяется в
транзакцию —
элементарную операцию по обработке
данных,
имею-
щую фиксированные
начало,
конец (успешное или неуспешное завершение) и ряд
других характеристик.
Особенность этой архитектуры
в
том,
что все
вычисления выполняются на клиент-
ских местах, что требует наличия на них достаточно производительных ПК (это
так называемые системы с
толстым клиентом —
программой, которая выполняет
всю обработку получаемой от сервера информации).
Приложения в клиент-серверной
архитектуре.
Эта
архитектура похожа
на
предыду-
щую,
только сервер помимо простого обеспечения одновременного доступа к дан-