Основы проектирования корпоративных систем - Сергей Зыков
Шрифт:
Интервал:
Закладка:
Рис. 9.6. Публикация разработанного приложения
Какие особенности имеет смысл отметить в Windows Forms в связи с перечисленными задачами по поддержке корпоративных приложений? Прежде всего это высокая степень интерактивности. Ранее описывалось, каким образом осуществляется интеграция приложений, каким образом поддерживаются такие сложные элементы управления, как DataGridView, каким образом пользователь может получить доступ к гетерогенным источникам информации для работы с базами данных, для работы со слабоструктурированной информацией (аудио, видео). Кроме того, поддерживаются окна, ведение диалога, возможен диалог пользователя системы, общение в интерактивном режиме, сценария взаимодействия пользователя с корпоративной системой. Windows Forms поддерживает элементы управления печати корпоративных интерфейсов с WYSIWYG интерфейсом, с помощью интеграции с офисными приложениями. Естественно, интерфейс при этом выглядит привычным пользователю образом, поскольку поддерживаются традиционные командные кнопки, пункты меню и т. д. Можно достаточно легко оснастить компоненты справочной информацией, т. е. онлайновой справочной системой с возможностью гипертекстовых ссылок, контекстного поиска и т. д., как мы видим в Windows и Office, можно добавлять документацию к формам и т. д., можно достаточно легко осуществлять локализацию приложения, перевод на другой язык – важно использование кодировки в Unicode. Кроме того, поддерживаются различные единицы измерения (метры, футы), различные валютные системы (рубли, доллары, евро и т. д.). И еще одна важная особенность Windows Forms: поскольку это надстройка на. Net Framework, можно использовать встроенную систему информационной безопасности, которая основана на реализации механизма сборок. Каждая сборка имеет метаданные, в которых описываются, в частности, автор, версия, цифровая подпись. То есть сборку достаточно сложно подделать или использовать вне контекста приложения, поскольку автор достаточно однозначно определяется сборкой, и сборка, если она подделана, не подойдет, не сможет быть установлена в корпоративную систему и каким-то образом повредить ее целостность, надежность и т. д.
Итак, подводя итоги обсуждения технологии Windows Forms, технологии, поддерживающей эргономичный интерфейс корпоративных приложений, можно сделать следующие выводы. Во-первых, эта технология поддерживает высокую интерактивность, сценарную обработку данных, т. е. обработку данных на основе событий с высокой вариативностью – сценарии эти могут быть достаточно гибкими и адекватно реагирующими на самые разные действия пользователя. Windows Forms имеет огромное количество различных элементов управления, которые позволяют строить достаточно сложные и одновременно привычные пользователю и понятные ему элементы интерфейса – это DataGridView, командные кнопки, элементы меню и т. д. Пользователь в связи с этим получает возможность работать с корпоративными системами предсказуемым образом, повышает свою производительность и, следовательно, производительность труда в корпорации. Кроме того, осуществляется возможность доступа к гетерогенным источникам информации, что важно для корпоративных пользователей, в первую очередь посредством удаленного доступа. Пользователи получают возможность доступа к гетерогенным источникам данных, а также к аудио– и видеоинформации на основе XML-представления. И что очень важно, они имеют возможность агрегировать эту информацию, получать ее в едином интерфейсе, т. е. в гетерогенном отчете может быть представлен как текст, извлечение из отчета базы данных на основе запроса, так и определенная фото– и видеоинформация, которая извлечена из хранилищ данных. Технология Windows Forms позволяет без особых затрат производить обновление, коррекцию, усовершенствование отдельных компонентов программных систем и программных систем в целом. Пользователь получает возможность автоматического обновления, если осуществляется подписка на это обновление, поскольку Windows Forms является надстройкой на. NET и поддерживает все политики, протоколы шифрования данных, протоколы взаимодействия, в том числе по Интернету, которые реализованы для. NET Framework.
Итак, была рассмотрена технология Windows Forms, которая предназначена для создания эргономичных пользовательских интерфейсов корпоративных систем. При этом упоминалось, что эта технология поддерживает распределенные взаимодействия пользователей с гетерогенными источниками данных на основе таких элементов, как BindingSourceNavigator, и подобных средств организации доступа к гетерогенным источникам корпоративной информации. Теперь обсудим, каким образом осуществляется создание и поддержка распределенных приложений на платформе. NET, какие технологии используются. Прежде всего, речь пойдет о веб-сервисах и о технологии Remoting. Последняя разработана Microsoft, является достаточно жесткой, но тем не менее обеспечивает высокую безопасность и надежность приложений, что весьма важно для корпоративных систем. Обсудим ее в связи с другими технологиями сетевого взаимодействия компонентов распределенных приложений в корпоративной интернет-среде.
Во-первых, рассмотрим общий принцип функционирования распределенных приложений, а также их основные особенности, в которых явно выделяются роли клиента и сервера. Клиент и сервер – это не обязательно аппаратное обеспечение, это не обязательно один и тот же компьютер. Сервер может быть распределен по нескольким компьютерам – это, скорее, логические объекты. Мы рассмотрим различия и основные особенности веб-сервисов по отношению к технологии Remoting. Далее речь пойдет об основных понятиях, которыми следует оперировать при определении распределенных приложений. Рассмотрим низкоуровневые средства для работы с сетевыми приложениями и еще раз вернемся к технологии клиент-серверного взаимодействия для построения распределенных приложений корпоративного типа. Очень важна, особенно в связи с Remoting, процедура удаленного вызова процедур (RPC). Это важная технология, которая исторически достаточно рано возникла и, по сути, реализует базовую схему взаимодействия распределенных приложений, в том числе в интернет-среде. Мы обсудим, каким образом осуществляется компонентное проектирование и программирование в среде. NET, центральным понятием идеологии. NET является компонент, синонимом компонента выступает сборка.
По сути, проектирование корпоративных приложений как раз и ведется в терминах компонентов. При этом пользователь или заказчик получает строго определенное корпоративное приложение, собранное по заказу именно из тех компонентов, которые нужны для получения пользователем требуемой им функциональности. Таким образом пользователь может гибко определять необходимую функциональность и экономить средства именно за счет выбора строго определенных компонентов корпоративных приложений. Мы рассмотрим технологию Web Forms в связи с Windows Forms, которые мы рассмотрели раньше, т. е. те формы ввода данных и получения отчетной информации, которые предназначены специально для интернет-взаимодействия, и посмотрим сходства и различия с Windows Forms.