Что такое Microsoft .NET?
Страница 2. Web-службы и ASP.NET


 

Web-службы

Поддержка платформой .NET Web-служб является одним из наиболее важных ее свойств. Web-службы, построенные на основе промышленного стандартного протокола SOAP (Simple Object Access Protocol — простой протокол доступа к объектам), позволяют использовать функции ваших приложений в любом месте Internet. С точки зрения программиста, работающего в среде .NET, не существует различия между Web-службами и другими типами служб, которые реализуются с помощью классов в языках программирования, соответствующих спецификации .NET. Используемая при этом модель программирования остается неизменной, независимо от того, вызывается ли функция приложением, отдельным компонентом, установленным на этой же машине, или, как в случае с Web-службами, на другой машине.

Эта присущая простота используемой модели программирования позволяет компаниям очень легко создавать и устанавливать приложения. При желании все необходимое для приложения может извлекаться из внешних источников, да и разработку приложения могут выполнить независимые разработчики. В результате этого удается избежать проблем, связанных с разработкой, развертыванием и сопровождением приложения. Иными словами, вы можете просто воспользоваться Web-службами, которые вам предлагают независимые разработчики. Эти Web-службы могли даже и не существовать в то время, когда вы проектировали свое приложение.

ASP.NET

Платформа .NET включает также полностью переделанную версию популярной технологии ASP (Active Server Pages), известную теперь под названием ASP.NET. В основе ASP лежит интерпретируемый код сценариев, в который вставлены команды форматирования текста. Код сценариев реализуется на одном из языков с довольно ограниченными возможностями. А технология ASP.NET позволяет писать код на любом языке, поддерживаемом платформой .NET. К таким языкам относится С#, VB.NET, JScript и C++ с управляемыми расширениями. Поскольку полученный при этом код является компилируемым, интерфейсный код может быть отделен от бизнес-логики и помещен в отдельный файл.
Технология ASP.NET предоставляет в распоряжение разработчиков Web-формы, которые чрезвычайно упрощают создание пользовательских интерфейсов при программировании в Web.

Перетаскивание (drag and drop) позволяет очень легко создавать макеты форм в среде Visual Studio.NET. Затем можно добавить код для обработки события формы, например, щелчка.

В технологии ASP.NET реализовано автоматическое определение функциональных возможностей броузера. Если броузер обладает широкими функциональными возможностями, обработка кода может быть выполнена на стороне клиента. В случае использования менее мощного броузера, обработку кода выполняет сервер, который затем генерирует стандартную HTML-страницу. Все эти процессы происходят достаточно прозрачно для разработчиков, использующих технологию ASP.NET.

В процессе создания Web-приложений использование Web-служб вместе с полнофункциональными компилируемыми языками программирования, такими как С#, VB.NET и управляемый C++, позволяет широко применять модели объектно-ориентированного программирования. Достичь этого при помощи языков подготовки сценариев, применяемых в ASP, и компонентов, построенных на основе модели компонентных объектов Microsoft (Component Object Model, COM) было бы невозможно.

Открытые стандарты и возможность взаимодействия (функциональная совместимость)

Современная вычислительная среда состоит из множества аппаратных и программных систем. В качестве компьютеров могут использоваться мэйнфреймы и высокопроизводительные серверы, рабочие станции и персональные компьютеры, маленькие мобильные устройства, такие как карманные компьютеры, часто называемые персональными цифровыми помощниками (Personal Digital Assistance, PDA) и даже сотовые телефоны. К числу используемых операционных систем принадлежат традиционные операционные системы, под управлением которых работают мэйнфреймы, различные клоны операционных систем Unix, Linux, несколько версий операционной системы Windows, операционные системы реального времени и специальные операционные системы, наподобие PalmOs, предназначенной для управления мобильными устройствами. На практике используются различные языки программирования, различные базы данных, различные инструментальные средства разработки приложений, а также различное промежуточное программное обеспечение (программное обеспечение, содействующее процессам обмена информацией между клиентом и сервером).

В современной вычислительной среде очень немногие приложения являются самодостаточными островами. Даже небольшие обособленные приложения, развернутые на отдельном ПК, могут использовать Internet при регистрации программного продукта или для получения обновлений к нему. Ключом к функциональной совместимости приложений является применение существующих стандартов. Поскольку, как правило, приложения работают в сети, ключевым стандартом является протокол, используемый для обмена данными.

Протоколы обмена

Сокеты, используемые протоколом TCP/IP, высокостандартизированы и широкодоступны. Но программирование с применением сокетов рассматривается программистами как слишком низкоуровневое. Именно необходимость программирования на низком уровне препятствует продуктивному написанию устойчивых распределенных приложений. Протокол удаленного вызова процедур RPC (Remote Procedure Call) имеет несколько более высокий уровень. Но протокол удаленного вызова процедур RPC (Remote Procedure Call) является достаточно сложным, и к тому же существует масса его разновидностей. Приобрели популярность такие протоколы высокого уровня, как CORBA (Common Object Request Broker Architecture — архитектура посредника объектных запросов), RMI (Remote Method Invocation — технология удаленного вызова методов), а также распределенная модель компонентных объектов DCOM (Distributed Component Object Model). Эти протоколы все еще сложны и для организации их работы требуется наличие специальной среды как на стороне сервера, так и на стороне клиента. Им присуши также и другие недостатки. Например, в процессе использования данных протоколов возможно возникновение проблем при прохождении пакетов данных через брандмауэры (системы сетевой защиты).

Тем не менее, один протокол получил повсеместное распространение. Это протокол передачи гипертекстовых файлов HTTP (Hypertext Transfer Protocol). Именно по причине повсеместного распространения протокола HTTP, компании Microsoft и другим производителям сетевого программного обеспечения пришлось разработать новый протокол, получивший название SOAP (Simple Object Access Protocol — простой протокола доступа к объектам). Для кодирования запросов методов объектов и сопутствующих данных в протоколе SOAP используются тексты на языке XML (extensible Markup Language). Огромным достоинством протокола SOAP является его простота. Вследствие своей простоты этот протокол может быть легко реализован на многих устройствах. Протокол SOAP (Simple Object Access Protocol) может работать на верхнем слое любого стандартного протокола. Но именно возможность его работы на верхнем слое таких стандартных Internet-протоколов, как протокол передачи гипертекстовых файлов HTTP (Hypertext Transfer Protocol) и протокол SMTP (Simple Mail Transfer Protocol — простой протокол пересылки почты, или простой протокол электронной почты), позволяет пакетам данных проходить через системы сетевой защиты (брандмауэры) без каких-либо проблем, связанных с возможностью соединения.

 
« Предыдущая статья   Следующая статья »