Основы проектирования корпоративных систем - Сергей Зыков
Шрифт:
Интервал:
Закладка:
Назначение Windows Forms – обеспечение разработки традиционных Windows-приложений на основе сервисов Microsoft.NET и соответствующих библиотек классов.
Особенности разработки – унификация доступа:
• к библиотекам классов;
• механизмам распространения сервисов;
• механизмам поддержки версий;
• сервисам безопасности.
Вывод: создание Windows-приложений в архитектуре Microsoft.NET дает разработчикам существенные преимущества, поскольку огромное количество классов уже реализовано, и остается заполнить пробелы только с реализацией бизнес-логики по сравнению с традиционным API-ориентированным подходом.
Назначение Web Forms — основа веб-сервисов и веб-приложений в архитектуре Microsoft.NET.
Особенность – программная модель основана на ASP+ – новом поколении активных серверных страниц (эволюция технологии ASP – более 1 млн разработчиков).
Идея веб-форм (из Visual Basic 6): отделение логики веб-приложения от интерфейса (за счет объединения в рамках формы ASP– и HTML-кода).
Преимущества:
• более строгая структурированность приложений;
• широкий спектр (серверных) интерфейсных элементов;
• простая и мощная объектная модель;
• легкость разработки (и масштабирования) веб-приложений.
Основное средство для разработки приложений и сервисов в архитектуре. NET – Microsoft Visual Studio.NET (современная версия Microsoft Visual Studio).
Вот какого рода веб-сервисы можно создавать в. NET, так выглядит общая архитектура (рис. 8.6).
Рис. 8.6. Веб-сервисы в. NET
Веб-сервисы в. NET:
1) программируемые компоненты приложений, доступные посредством стандартных интернет-протоколов;
2) центральная часть архитектуры. NET;
3) распределяют функциональность по глобальной сети;
4) строятся на существующих и развивающихся стандартах: HTTP, XML, SOAP, UDDI, WSDL.
Веб-сервисы являются центральной частью архитектуры. NET и позволяют реализовать все основные функции, связанные с компонентным программированием, доступным по средством стандартных интернет-протоколов, и распределить функциональность по глобальной сети.
Поддерживаемые форматы: HTTP, XML, SOAP, UDDI, WSDL и др.
Компонентное программирование в. NET. Компоненты – это:
• независимые, повторно используемые и тиражируемые модули, из которых строятся приложения;
• в целом более крупные, чем объект (объекты – конструкции уровня ЯП);
• могут содержать множественные классы, которые реализуют большое количество объектов;
• независимы от языка реализации.
В общем случае разработчик и пользователь компонента территориально разделены и пользуются разными языками программирования в единой среде. NET.
Компонентная объектная модель (COM):
• основной стандарт Microsoft для компонентов;
• содержит протокол для инициализации и использования компонентов внутри одного процесса, между процессами или между компьютерами;
• основа для ActiveX, OLE и многих других технологий взаимодействия;
• поддерживается в Visual Basic, C++, NET и др.
Модель Java Beans:
• основной стандарт Sun Microsystems для компонентов;
• зависима от языка реализации.
Сравнение компонентно– и объектно-ориентированного программирования.
Основные понятия объектно-ориентированного программирования:
• класс (class);
• интерфейс (interface).
Основные понятия компонентно-ориентированного программирования:
• свойство (property);
• событие (event);
• сборка (assembly).
Говоря об основных возможностях. NET, следует отметить, что кроме плюсов существуют и значительные недостатки.
Наиболее существенные недостатки. NET:
1) высокие требования к аппаратному обеспечению (минимум 256M RAM, 10G HDD для работы с Microsoft Visual Studio.NET);
2) сложности работы с некоммерческими релизами программного обеспечения (некоторая неустойчивость, отсутствие полномасштабной документации); сервис – это не всегда надежно и предсказуемо. Не всегда имеется документация. Некоторые языки не до конца стандартизованы, а некоторые не до конца реализованы как продукты;
3) поддержка ряда теоретически интересных и практически полезных языков программирвоания не в полном объеме (SML для Visual Studio.NET – в процессе реализации);
4) инструментарий. NET и компиляторы для языков программирования не ратифицированы по международным стандартам.
Платформа. NET – выводы.
1. Стратегическая идеология – это и технологическая платформа, и подход, который определяет стратегию Microsoft на ближайшее десятилетие.
2. Несомненное качественное превосходство над аналогами (Borland Delphi, Microsoft Visual Studio и др.) за счет:
• интероперабельности и межъязыкового взаимодействия;
• многоуровневой безопасности, SDL, безопасности на уровне компонентов;
• интеграции с веб-сервисами;
• облегчения разворачивания и использования.
3. Завершенность решения для широкого коммерческого использования в силу концептуальной новизны и грандиозности проекта.
4. NET – развитие платформы Windows, которое позволяет осуществлять компонентное проектирование.
5. NET – фундамент для создания корпоративных приложений нового поколения.
6. Основа. NET – принцип компонентной интеграция приложений на уровне сервисов, взаимодействующих посредством языка XML и протокола SOAP.
7. Стратегическая цель. NET – создание программной инфраструктуры для разработки и функционирования распределенных приложений на базе интернет-стандартов.
Глава 9
Разработка интерфейсов корпоративных систем по технологии Windows Forms
Пришло время спуститься на уровень технологий и детализировать вопросы, связанные с объектными библиотеками, которые позволяют разрабатывать корпоративные приложения на основе. NET. Рассмотрим вопросы, связанные с проектированием интерфейсов для распределенных приложений.
Когда говорят о корпорации, речь идет о территориально распределенной структуре, которая решает общие бизнес-задачи. Компании этой структуры отстоят далеко (территориально), но тем не менее необходимо обеспечить функционирование приложений корпоративных систем. Для этого используются разные технологии, в частности Remoting, также Windows Communication Foundation, технологии, связанные с веб-сервисами, которые реализуют решение как сервис, последовательно предлагаемые и реализуемые Microsoft в подходе. NET.
Начнем с описания технологии Remoting от Microsoft, которая предназначена для построения корпоративных систем, взаимодействующих по достаточно жестким и строгим протоколам с высокой надежностью. На сегодняшний день эта технология, возможно, не столь популярна, как несколько лет назад, но она до сих пор используется, особенно там, где требуется высокий уровень безопасности.