WebClub - Всероссийский Клуб Веб-разработчиков
WebClub.RU » Архив » Разработка веб-приложений с ASP+

Разработка веб-приложений с ASP+


Дата публикации: 17-03-2013

На недавно прошедшей конференции "2000 Microsoft Professional Developer's Conference" была представлена новая технология Microsoft, позволяющая веб-разработчикам создавать более богатые и более надежные приложения, чем когда-либо до этого, дающая мощный импульс в разработке интернет-приложений в будущем. Технология, о которой здесь далее пойдет речь, - следующее поколение Active Server Pages (ASP), известное как ASP+.

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

Страницы ASP+ компилируются
Файлы ASP+ остались все теми же простыми для изменения текстовыми файлами, как были всегда. Поэтому, для того, чтобы работать с проектом ASP+, Вы можете использовать Visual InterDev, Visual Studio 7 или любой текстовый редактор вроде Notepad.

Новинка заключается в следующем: ASP+ создает побочную копию исходного файла, которая откомпилирована! Компилированный код выполняется намного быстрее, чем интерпретация оригинального ASP-файла. И каждый раз, после того, как Вы изменили исходные файлы ASP+, Internet Information Server (IIS) их откомпилирует, после того, как получит первый запрос к измененной странице. Такой тип компиляции по требованию называется компиляцией "Just-In-Time" (JIT).

Хотя, наряду с неоспоримым преимуществом ускорения работы откомпилированного кода, выполнение JIT для ASP+, своего рода, палка о двух концах. Да, откомпилированная программа быстрее. Но в то же время придется подождать, когда Вы решите демонстрировать только что измененное приложение Вашему начальнику или клиенту, для того, чтобы позволить IIS выполнить компиляцию. Дело в том, что приложение очень заметно замедляется, выполняясь первый раз, так как измененные исходные файлы в это время будут компилироваться.

Кстати, исходные файлы ASP+ имеют новое расширение *.ASPX, а новое название файла Global.asa - Global.asax.

Дополнительная языковая поддержка
Тем, кто обычно пишет на Visual C++ и решит программировать ASP, теперь не надо будет тратить время на изучение VBScript. В ASP+ добавлен новый объектно-ориентированный язык по имени C#. Во многом он похож на Visual C++, плюс также разделяет некоторые сходства с Java. В действительности же, этот язык в первую очередь ближе к Java, чем Visual C++.

C# имеет то преимущество, что в его конструкции включены особенности, которые легко позволяют разработчикам создавать и использовать компоненты COM+ (подробнее о C#: sourceDNA.com).

Веб-формы предлагают простое управление
Веб-формы ASP+ предлагают модель программирования, которая может использоваться на сервере, чтобы динамически генерировать веб-страницы. Созданные как логическая эволюция ASP (ASP+ обеспечивает совместимость синтаксиса с существующими страницами) веб-формы ASP+ были специально разработаны, чтобы убрать ряд ключевых недостатков предыдущей модели. В частности, они предоставляют следующее:

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

Страницы ASP+ обеспечивают совместимость синтаксиса с существующими ASP-страницами. Это включает поддержку для кода <% %> исполнямых блоков, которые могут смешиваться с HTML-кодом в пределах ASPX-файла. Эти кодовые блоки выполняются "нисходящим" (сверху-вниз) способом в странице, тратя время.

В то время как блоки кода <% %> обеспечивают мощный путь управления текстовым выводом, возвращенным из страницы ASP+, они не помогают в обеспечении чистой модели программирования HTML. Разработчики, использующие только кодовые группы <% %> должны управлять состоянием страницы и понимать зарегистрированные значения.

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

Компоненты проверки, добавленные к странице ASP+, подобны обычным серверным компонентам - реализованы проверки определенного типа, например, такие как: проверка диапазона введенного значения; сравнение с заданным шаблоном; проверка заполнения всех требуемых полей формы (RequiredFieldValidator) и др.

Эти компоненты имеют как "верхний", так и "нижний" уровни поддержки веб-клиента. В верхнем уровне проверка будет выполняться на клиенте (используя javascript и DHTML). В нижнем уровне - на сервере. Модель программирования для обоих сценариев идентична.

Разработчики страниц ASP+ могут произвольно проверять во время выполнения значение свойства Page.IsValid, чтобы определить, все ли серверные компоненты проверили и допускают данную страницу. Это предоставляет простой способ одной строкой определить, продолжать ли далее логику выполнения. Например, следующий код выполняет проверку Page.IsValid перед перед выполнением запроса к таблице БД, исходя из выбранной категории.

Компоненты дают возможность многократного использования
В дополнение к использованию кода <% %> - чтобы программировать динамическое содержание, разработчики страниц ASP+ теперь могут использовать серверные компоненты ASP+, чтобы программировать веб-страницы. Серверные компоненты объявляются в пределах ASPX-файла, используя специальные теги, которые содержат атрибут runat="server".

Ниже приводится пример кода с использованием четырех компонентов: <form runat=server>, <asp:textbox runat=server>, <asp:dropdownlist runat=server> и <asp:button runat=server>. Во время выполнения эти компоненты автоматически генерируют содержание HTML.

<%@ Page Language="C#"%gt;
<html>
 <head>
  <link rel="stylesheet"href="intro.css">
 </head>
 
 <body>
 
  <center>
 
   <form action="intro4.aspx" method="post" runat=server>
 
     <h3> Name: <asp:textbox id="Name" runat="server"/>
 
     Category:  <asp:dropdownlist id="Category" runat=server>
     <asp:listitem>psychology</asp:listitem>
     <asp:listitem>business</asp:listitem>
     <asp:listitem>popular_comp</asp:listitem>
 
     </asp:dropdownlist>
 
     <asp:button text="Lookup" runat="server"/>
 
   </form>
 
  </center>
 
 </body>
 
</html>

Эти компоненты автоматически поддерживают любые введенные клиентом значения между проходами туда-обратно на сервер. Это состояние не сохранено на сервере (это вместо сохранено в поле форм <hidden>, которое посылается туда-обратно между запросами). Заметьте также, что клиентский скрипт не требовался на клиенте.

В дополнение к стандартным полям input в HTML - ASP+ предоставляет возможность разработчикам использовать более богатые компоненты управления на их страницах.

Подготовлено с использованием статьи
Ричарда Лэйнекера (Richard Leinecker)
http://www.earthweb.com

Популярное

Не так давно в сети появился новый сервис, под названием Dead Man Zero. Этот сервис сделал...
Рынок социальных площадок уже давно стал стабильным. Несмотря на то, что время от времени...
Artisteer 4 – единственный в своем роде продукт, позволяющий автоматизировать работу над созданием...
Февраль 2017 (3)
Январь 2017 (1)
Август 2016 (1)
Май 2016 (2)
Ноябрь 2015 (1)
Октябрь 2015 (1)

Карта сайта: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41

Друзья сайта

Хотите продать свой сайт?
- Мы быстро и удобно для Вас сможем его купить:
  • Заявка на продажу сайта
  • Раcсматриваем цены на каждый сайт в индивидуальном порядке.

    Случайная цитата

    Eric S. Raymond:

    "Обучение программированию не может научить быть экспертом, также как и изучение кистей и красок не может превратить кого-либо в художника."

    Опрос

    Какой антивирус Вы используете?

    Kaspersky Antivirus
    NOD32
    Norton Antivirus
    Dr.Web
    Panda
    Аvast!
    ClamWin
    Другой...