Смекни!
smekni.com

Технологии ASP (стр. 2 из 3)

- простота проектирования страниц,

- возможность взаимодействия с технологией СОМ

- относительная легкость изучения для программистов, знакомых с языком Visual Basic.

Во-первых, если бы ASP была выпущена без объектов доступа к данным ADO, то, скорее всего, она не завоевала бы признание так быстро. Технология ADO заменила технологию RDO, которая, в свою очередь, пришла на смену технологии DAO. Microsoft пропагандировала ADO как наиболее предпочтительный метод доступа к базам данных. Объектная модель ADO была существенно упрощена по сравнению с предшественниками.

Во-вторых, одновременно с выходом ASP 1.0 увидел свет первый комплект приложений для Microsoft Visual Studio, включавший, в частности, программу InterDev 1.0. Этот инструмент предоставлял широкие возможности (особенно для первой версии) и пользовался серверными расширения FPSE для упрощения работы по сопровождению Web-сайтов, в результате чего отпала необходимость в отдельном FTP-клиенте. Технология Intellisense для СОМ (автоматическое предложение списка свойств и методов объявленного объекта после ввода его имени) и наличие встроенных объектов ASP и элемента управления для доступа к данным сделали этот редактор весьма популярным, даже несмотря на некоторые недостатки. Например, его графический редактор был основан на ранней версии программы FrontPage.

Без ASP не сложился бы рынок компонентов от сторонних фирм, который сейчас оценивается во много миллионов долларов в год. Конечно, это был не единственный фактор, поскольку рынок компонентов для Visual Basic возник еще до революции, ознаменованной появлением технологии СОМ, но, именно ASP и СОМ позволили некоторым компаниям неплохо заработать на продаже готовых компонентов для Web-серверов. До появления ASP 1.0 приобрести готовые компоненты и встроить их в Web-сайт могли разве что самые квалифицированные программисты. Предоставив такую возможность широким массам, ASP открыла совершенно новый рынок для поставщиков компонентов, которые продолжают выпускать мощные инструменты, легко интегрируемые с ASP-приложениями.

Четвертая особенность ASP, немало способствовавшая ее популярности, использование VBScript как языка программирования по умолчанию. Благодаря этому многие программисты, уже знакомые с языком Visual Basic, смогли быстро освоить программирование для ASP. Кроме того, Microsoft предоставила возможность использовать и другие языки от сторонних фирм, и очень скоро код для ASP стало можно писать и на Perl.

Но, несмотря на все перечисленные достоинства у ASP 1.0 были существенные ограничения. В частности, необходимо было перезапускать Web-сервер после каждого обновления используемых DLL (a COM-объекты физически хранятся в DLL-файлах). При переходе к версии ASP 2.0 эта проблема, а также ряд других, связанных с безопасностью и производительностью, были решены, но самым крупным достижением стало появление сервера транзакций MTS. ASP 2.0 поставлялась в составе Web-сервера IIS 4.0, a MTS 1.0 - в составе бесплатного пакета дополнений Windows NT 4 Option Pack.

В феврале 2000 года Microsoft выпустила IIS 5.0 в составе операционной системы Windows 2000. Вместе с IIS 5.0 поставлялась уже версия ASP 3.0, a MTS был заменен на сервисы СОМ+. По существу, СОМ+ объединил функциональность MTS со службами очередей сообщений, a ASP приобрела дополнительные возможности, в том числе несколько новых методов и свойств встроенных объектов. Основные различия между ASP 2.0 и ASP 3.0 заключались скорее в поддержке сервисов СОМ+, нежели в самом языке. Всякий, кто умел писать на VBScript для ASP 1.0 в среде InterDev 1.0, не испытывал никаких затруднений при работе с IIS 4.0 или IIS 5.0. Но несмотря на все эти преимущества все вышеперечисленные технологии ASP обладали рядом недостатков:

o быстродействие сценариев оставляло желать лучшего, поскольку в основу ASP была заложена интерпретация кода на стороне сервера;

o разработка и сопровождение сценариев затруднялись тем, что представление страницы не отделялось от управляющего кода;

o сложности с масштабированием, поскольку страницы ASP не сохраняли текущее состояние сеанса при переходе на другие серверы web-комплекса или после перезапуска;

o отсутствие нормальной модели безопасности.

Эти и другие проблемы решаются в новой технологии ASP.NET, в которой дело обстоит совершенно иначе.

Сотрудники Microsoft Марк Андерс (Mark Anders) и Скотт Гатри (Scott Guthrie) начали разрабатывать продукт, ставший в конце концов ASP.NET, в начале января 1998 года. В то время технологии ASP было всего год от роду, но уже тогда стали очевидны некоторые присущие ей ограничения. Например, как уже говорилось выше, можно было использовать только сценарные языки. Кроме того, отсутствие компонентной модели ASP затрудняло разработку хороших инструментальных средств для нее. Чередование кода программы с HTML-текстом часто затрудняло совместную работу программистов и дизайнеров над одним проектом. С самого начала ASP.NET проектировалась для преодоления недостатков ASP.

Марк и Скотт решили строить ASP.NET (тогда она называлась ASP+) в контексте новой среды исполнения NGWS, которая как раз тогда разрабатывалась. Платформа NGWS, которой суждено было превратиться в .NET, предоставляла богатые библиотеки и должна была включить в себя новый язык программирования С#, на котором и написана ASP.NET. ASP.NET (как часть платформы Microsoft .NET) — появился в январе 2002 года. Версии до ASP.NET иногда называют «классическим» ASP.

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

3. Общие сведения о технологиях ASP.NET

ASP.NET — это технология создания веб-приложений и веб-сервисов от компании Майкрософт. Она является составной частью платформы Microsoft .NET и развитием более старой технологии Microsoft ASP.

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

Хотя ASP.NET берёт своё название от старой технологии Microsoft, ASP, она значительно от нее отличается. Microsoft полностью перестроила ASP.NET, основываясь на CLR), который является основой всех приложений Microsoft.NET. Программисты могут писать код для ASP.NET, используя различные языки программирования, поддерживаемые в .NET Framework, обычно Visual Basic.NET, JScript .NET или C#, а также «открытые» языки, например, Perl и Python. ASP.NET имеет преимущество в скорости по сравнению с другими технологиями, основанными на скриптах, так как при первом обращении код компилируется и помещается в специальный кеш, и впоследствии только исполняется, не требуя затрат времени на оптимизацию, и т. д.

3.1 Преимущества ASP.NET перед ASP

-Компилируемый код выполняется быстрее, большинство ошибок отлавливается ещё на стадии разработки

-Значительно улучшенная обработка ошибок времени выполнения, с использованием блоков try..catch

-Пользовательские элементы управления (controls) позволяют выделять часто используемые шаблоны, такие как меню сайта

-Использование метафор, уже применяющихся в Windows-приложениях, например, таких как элементы управления и события

-Расширяемый набор элементов управления и библиотек классов позволяет быстрее разрабатывать приложения

-ASP.NET опирается на многоязыковые возможности .NET, что позволяет писать код страниц на VB.NET, Delphi.NET, Visual C#, J# и т. д.

-Возможность кэширования всей страницы или её части для увеличения производительности

-Возможность кэширования данных, используемых на странице

-Возможность разделения визуальной части и бизнес логики по разным файлам («code behind»)

-Расширяемая модель обработки запросов

-Расширенная событийная модель

-Расширяемая модель серверных элементов управления

-Наличие master-страниц для задания шаблонов оформления страниц

3.2 Процесс создания web-сайта на платформе ASP.NET

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

При разработке дизайна, лучше всего использовать Мастер страницы (Master Pages), которые, по сути, являются некоторыми шаблонами страниц сайта. Мастер страницы - одна из самых современных технологий web-программирования, используя их, Вы сможете легко поддерживать единый дизайн сайта. В случае необходимости изменить дизайн будет достаточно отредактировать Мастер страницы для разделов сайта, все остальные страницы, которых может быть несколько сотен или тысяч, изменять не придётся.

После создания Мастер страниц для разделов сайта, следует перейти к созданию обычных страниц. Категорически не рекомендуется хранить контент сайта внутри обычных ASP страниц, лучше использовать для этого XML - файлы или базу данных.

Приступая к реализации функциональности сайта, следует тщательно ознакомиться с классами стандартной библиотеки, особенно теми, которые могут быть полезны в каждом конкретном случае. Следуя данному совету, Вы можете существенно сократить время, затрачиваемое на программирование функциональности web-сайта.

3.3 Использование дополнительных средств

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