- •2.Опорная модель osi
- •2 Обзор программных средств
- •2.1 Аутентификация и авторизация. Система Kerberos
- •2.2 Установка и настройка протоколов сети
- •4 Классификация архитектур информационных приложений
- •2.1. Файл-серверные приложения
- •2.2. Клиент-серверные приложения
- •2.3. Intranet-приложения
- •2.4. Склады данных (DataWarehousing) и системы оперативной аналитической обработки данных
- •2.5. Интегрированные распределенные приложения
- •5 Файл-серверные приложения
- •3.1. Традиционные средства и методологии разработки файл-серверных приложений
- •3.1.1. Системы программирования и библиотеки
- •3.1.2. Средства и методы разработки приложений на основе субд на персональных компьютерах
- •3.2. Новые средства разработки файл-серверных приложений
- •3.2.1. Общая характеристика современных средств
- •3.2.2. Примеры новых подходов
- •3.2.2.1. Пакет ms Access
- •3.2.2.2. Система Visual FoxPro
- •3.2.2.3. Среда программирования ca-Visual Objects
- •3.3. Перенос файл-серверных приложений в среду клиент-сервер
- •3.3.1. Библиотеки доступа к базам данных
- •3.3.2. Протокол odbc и его реализации
- •3.3.3. Укрупнение приложений (Upsigsing)
- •3.4. Рекомендации по использованию инструментальных средств разработки файл-серверных приложений
- •6 Клиент-серверные приложения
- •7 Принципы работы архитектуры клиент-сервер
- •Частично децентрализованные (гибридные) сети
- •Пиринговая файлообменная сеть
- •Пиринговые сети распределённых вычислений
- •Пиринговые финансовые сети
- •Сети клиент/сервер
- •10 Intranet приложения
- •Intranet - корпоративная , но не публичная сеть
- •Intranet - это применение Web-технологии
- •Intranet - это архитектура клиент-сервер
- •Intranet - не панацея от всех бед
- •11 Организация адресации в интернете
- •4. Практическая часть.
- •Основы сокетов
- •Системные вызовы
- •Создание и уничтожение сокетов
- •Вызов connect
- •Отправка данных
- •Серверы
- •Локальные сокеты
- •Пример использования локальных сокетов
- •Internet-Domain сокеты
- •Пары сокетов
- •Основные конструкции языка Java
- •Библиотека классов языка Java
- •Общие сравнительные характеристики:
- •Вызов расширения isapi сервером www
- •Функция GetExtensionVersion
- •Функция HttpExtensionProc
- •Получение данных расширением isapi
- •Функция GetServerVariable
- •Функция ReadClient
- •Посылка данных расширением isapi
- •Функция WriteCilent
- •Функция ServerSupportFunction
- •Способы поиска в Интернете Три способа поиска в Интернете
- •Поисковые серверы
- •Язык запросов поисковой системы
- •Классификация вторжений
- •Физическая безопасность
- •Утилизация старых компьютеров
- •Программный доступ
- •Идентификация пользователей
- •Системные демоны и службы
- •Службы tcp/ip, которые иногда можно отключить
- •Образец политики корпоративной безопасности
3.2.2.3. Среда программирования ca-Visual Objects
Новый продукт СА-VisualObjects, разработанный фирмой Computer Associates, является преемником широко распространенной системы программирования Clipper. Он ориентирован на создание информационных приложений с графическим интерфейсом пользователя в среде Windows.
С точки зрения синтаксиса VisualObjects почти на 90 процентов совпадает с CA-Clipper. Но VisualObjects не является просто продолжением линии Clipper. Хотя, конечно, при работе с VisualObjects можно использовать Clipper и включать разработанный раннее код в новую систему приложений.
Разработчику, использующему новую среду программирования, необходимо четко понимать особенности и преимущества объектно-ориентированного подхода, иметь представления о динамически компонуемых библиотеках (DLL) и принципах программирования в среде Windows.
Для работы систем VisualObjects требуется как минимум Intel 386 с 8 Мб оперативной памяти и Windows (с версией не менее, чем 3.1), а также примерно 40 МБ свободного дискового пространства. Но чтобы сделать работу более комфортной, лучше иметь 486-й (или более старший) процессор и 16 Мб памяти. Для создания приложений в среде GUI рекомендуется использовать сопроцессор. Такая конфигурация необходима именно для разработчиков, конечный же пользователь, применяющий готовые приложения, написанные в среде VisualObjects, не нуждается в таком мощном оборудовании. Это очень существенно для разработки коммерческих систем. При работе с VisualObjects не требуются дополнительные библиотеки, кроме библиотеки для работы с графикой.
В отличие от рассмотренных ранее сред программирования, при использовании VisualObjects простое изучение синтаксиса не позволяет сразу начинать работать. Необходимо освоить новые понятия. Прежде всего, это репозиторий (центральное хранилище объектов разработки). Это понятие чрезвычайно важно при разработке приложений в среде VisualObjects и непривычно для пользователей CA-Clipper. Вместо операций с PRG- и СН-файлами в VisualObjects используются модули, каждый из которых состоит, возможно, из нескольких функций, определений классов и методов.
Приложения, модули и компоненты хранятся в репозитории - своего рода глобальной базе данных. У репозитория есть еще одна важная функция - управление всеми частями приложения вплоть до компонентов самого низкого уровня. Автоматически поддерживаются связи между различными модулями и компонентами всех приложений. Репозиторию всегда "известно", был ли исходный код модифицирован или откомпилирован, так что отпадает необходимость в make-файлах и других файлах, так или иначе описывающих процесс компоновки.
Выбор опций в компиляции VisualObjects отличается от Clipper. По умолчанию устанавливается режим low (отображение самых серьезных ошибок). Однако можно выбрать опции none (предупреждения не выводятся), med (только важные предупреждения и серьезные ошибки), high (вывод всех предупреждений и ошибок). Существует режим, позволяющий предупреждать возникновение ошибок во время выполнения, при котором можно заказать отслеживание ситуаций переполнения, выхода за пределы указанного диапазона адресов (например, контроль доступа к элементам массива вне указанной размерности) и проверку корректности принадлежности объекта к тому или иному классу.
В VisualObjects реализован целый список переключателей компилятора, используемых для обеспечения совместимости с CA-Clipper. Так, можно "разрешить" применение переменных в стиле Clipper, объявить правила использования операторов присваивания "=" или "(=", а также обеспечить применение функции ProcName() и ProcLinep(). Кроме того, компилятор VisualObjects позволяет проводить оптимизацию кода по размеру и скорости выполнения, а также имеется возможность смешанной проверки, что очень полезно в процессе конвертирования Clipper-программы в VisualObjects.
С VisualObjects пользователь получает большой выбор библиотек, интегрируемых в IDE. Каждая используемая библиотека должна быть связана с приложением. Наиболее интересна библиотека GUI Classes - совокупность почти 100 классов. Здесь описаны классы для формирования окон, списков, кнопок, линеек прокрутки и прочих атрибутов GUI. DBF-библиотека поддерживает стандартные для xBase-архитектуры команды и функции обработки данных. Средства ООП позволяет реализовывать библиотека DBF Classes.
Доступ через протокол ODBC к таблицам обслуживает библиотека SQL Classes, объектно-ориентированный интерфейс для генератора отчетов Report Classes, ввод/вывод в традиции xBase-Terminal, а функции прикладного программирования для Windows - Windows API.
Центральное место занимает библиотека System Library, содержащая все системные средства.
При работе с VisualObjects существует два варианта программирования в графическом интерфейсе - использование программы эмуляции терминала или применение библиотеки CommonView. В первом случае существует возможность использовать созданные раннее Clipper-приложения как программы Windows, хотя, конечно, это будет все то же DOS-приложение, просто работающее в окне Windows.
Переход к GUI создает для разработчика массу новых проблем, что, правда, окупается на порядок более качественным и гибким приложением, получаемым в итоге.
Поскольку программисту приходится учитывать событийный характер поведения тех или иных узлов приложения, инструментарий визуальной разработки оказывается ключевым. СА-VisualObjects дает возможность применять мощный набор средств визуального программирования. Так, доступны редакторы меню, окон, отчетов, исходных текстов программ и пиктограмм. Все это позволяет создавать качественные приложения.
Сложность освоения VisualObjects состоит в традиционной ломке представлений и привычек, происходящей на пути от процедурного программирования к ООП. В скором времени появится большое количество программных систем, созданных на базе VisualObjects и реализующих все достоинства информационных систем в архитектуре клиент-сервер.