Система управления базой данных объектов Гражданской Обороны для принятия решений в чрезвычайных ситуациях

Страница 9

Рисунок 3.2.

Варианты построения приложений клиент-сервер.

Поскольку эта схема предъявляет наименьшие требования к серверу, она обладает наилучшей масштабируемостью. Однако сложные приложения, вызывающие большое взаимодействие с БД, могут жестко загрузить как клиента, так и сеть. Результаты SQL-запроса должны вернуться клиенту для обработки, потому что там находится логика принятия решения. Такая схема возлагает дополнительное бремя администрирования приложений, разбросанных по различным клиентским узлам.

Можно сократить нагрузку на клиента и сеть, переместив целиком компонент BL на сервер, при этом вся логика принятия решений оформлена в виде хранимых процедур и выполняется на сервере БД. Хранимая процедура - процедура с операторами SQL для доступа к БД, вызываемая по имени с передачей требуемых параметров и выполняемая на сервере БД. Компиляция повышает скорость исполнения хранимых процедур и сокращает нагрузку на сервер. Но, перегрузив хранимые процедуры прикладной логикой, можно потерять преимущества по производительности. Хранимые процедуры улучшают целостность приложений и БД, гарантируют актуальность коллективно используемых операций и вычислений. Улучшается сопровождение таких процедур, а также безопасность (нет прямого доступа к данным).

Переместив с клиента часть логики приложения на сервер, получим систему клиент-сервер с разделенной логикой. Часть прикладной логики может быть реализована на клиенте, а другая часть логики - в виде обработчиков событий (триггеров) и хранимых процедур на сервере БД. Такая схема при удачном разделении логики приводит к сбалансированной загрузке клиентов и сервера, но при этом затрудняется сопровождение приложений.

Рисунок 3.3.

Приложения клиент-сервер на основе многотерминальной системы.

На основе многотерминальной системы в качестве сервера приложений также возможно создание архитектуры клиент-сервер (рисунок 3.3.). В этом случае в многозадачной среде сервера приложений выполняются программы пользователей, а клиентские узлы вырождены и представлены терминалами.

4. ВЫБОР ЯЗЫКА ПРОГРАММИРОВАНИЯ

Кëàññèôèêàöèÿ сðåäñòâ рàçðàáîòêè иíôîðìàöèîííûõ пðèëîæåíèé

Сðåäè сðåäñòâ рàçðàáîòêè иíôîðìàöèîííûõ пðèëîæåíèé мîæíî вûäåëèòü сëåäóþùèå оñíîâíûå гðóïïû:

· тðàäèöèîííûå сèñòåìû пðîãðàììèðîâàíèÿ;

· иíñòðóìåíòû дëÿ сîçäàíèÿ фàéë-ñåðâåðíûõ пðèëîæåíèé;

· сðåäñòâà рàçðàáîòêè пðèëîæåíèé кëèåíò-сåðâåð;

Рàññìîòðèì кðàòêî оòëè÷èòåëüíûå чåðòû è оáëàñòü пðèìåíåíèÿ кàæäîé гðóïïû иíñòðóìåíòàëüíûõ сðåäñòâ сîçäàíèÿ иíôîðìàöèîííûõ пðèëîæåíèé.

4.1.Тðàäèöèîííûå сèñòåìû пðîãðàììèðîâàíèÿ

Традиционные системы программирования представлены средствами создания приложений на языках третьего поколения 3GL: C, Pascal, Basic и др. Среди них по способам подготовки и выполнения программных модулей различают системы компилирующего и интерпретирующего типа. Инструментальные средства программирования могут быть представлены набором отдельных утилит (редактор текстов, компилятор, компоновщик и отладчик) или интегрированной средой программирования.

Процедурные языки программирования являются традиционными, они лишь претерпели изменения от неструктурных до структурных языков программирования. Объектно-ориентированное программирование - сравнительно новое направление, однако оно в концептуальном плане более привлекательно, позволяет рассматривать и реализовывать информационные и функциональные свойства объектов в неразрывной связи.

Свойствами объектно-ориентированных языков, обуславливающими их преимущества, являются сокрытие деталей реализации объекта (инкапсуляция), наследование процедурных и информационных частей от объектов-родителей, полиморфизм как возможность настройки на различные типы данных и др. Примерами объектно-ориентированных систем программирования являются C++ и Object Pascal.

Системы программирования 3GL нужны для организации специальных модулей в информационных приложениях, для создания эффективных по быстродействию программ обработки данных. Для создания с помощью систем программирования полноценных информационных приложений необходимо расширить их за счет использования библиотек диалога и доступа к базам данных, а также макросредств встроенного языка структурированных запросов Embeded SQL.

Систему программирования Visual Basic можно использовать для создания простых автономных приложений и компонентов VBX и OCX, для расширения и интеграции функциональных пакетов (Word, Excel, Access), а также как средство программирования для расширения систем документооборота и для создания утилит администрирования.

С момента выхода продано существенно больше копий Delphi, чем Visual Basic. Применение продукта возможно для создания расчетно-аналитических программ, для разработки DLL, для сопровождения и развития разработок, выполненных на Turbo и Borland Pascal, а также для быстрого прототипирования будущих приложений. В ряде случаев решающим для выбора будут умеренные требования Delphi-приложения к системно-техническому обеспечению.

С++ применяется для расширения системного программного обеспечения, для разработки крупных проектов, специальных приложений, создания библиотек и классов для предметной области, разработки динамических библиотек DLL, создания программного обеспечения для серверов приложений, разработки ОСХ, использования совместно с CASE-системами, обеспечения многоплатформенности и переносимости (по стандарту ANSI).

4.2. Èíñòðóìåíòû дëÿ сîçäàíèÿ фàéë-ñåðâåðíûõ прèëîæåíèé