ASP.NET

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

ASP.NET(Active Server Pages) — технология создания веб-приложений и веб-сервисов от компании Майкрософт. Она является составной частью платформы Microsoft .NET и развитием более старой технологии Microsoft ASP. На данный момент последней версией этой технологии является ASP.NET 5[1].

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

История ASP.NET[править | править вики-текст]

После выпуска сервера Internet Information Services 4.0 в 1997 году, компания Microsoft начала исследовать возможность новой модели веб-приложения, которая удовлетворит жалобы на ASP, особенно связанные с отделением оформления от содержания, и которая позволит писать «чистый» код[2]. Работа по разработке такой модели была поручена Марку Андерсу, менеджеру команды IIS, и Скотту Гатри, поступившему на работу в Microsoft в 1997. Андерс и Гатри разработали первоначальный проект в течение двух месяцев, и Гатри написал код первоначального прототипа во время рождественских каникул 1997 года.[3]

Первоначальный проект назывался «XSP»; Гатри объяснил в интервью 2007 года что, «всегда спрашивают, что означает буква X. В то время она ничего не значила. XML начинается с нее; XSLT начинается с нее. Все клевое начинается с X, поэтому мы его так и назвали.»[2] Прототип XSP был написан на Java, так как на тот момент у Microsoft не было Java-подобной технологии. В то время уже предполагалось (небезосновательно, как выяснилось в дальнейшем), что лицензирование Java для Microsoft не будет продлено в 2003 году (в 2003 истекал срок выданной Sun Microsystems лицензии). В 1999 было решено построить новую платформу на основе Common Language Runtime (CLR), так как в нем как и в Java наличествовало программирование по принципам ООП, Сборка мусора и другие возможности[4]. Гатри описал это решение как «огромный риск», так как успех новой разработки был связан с успехом CLR, которая, как и XSP, находилась на ранней стадии разработки.

Принципы ASP.NET[править | править вики-текст]

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

Преимущества ASP.NET перед ASP[править | править вики-текст]

  • Компилируемый код выполняется быстрее, большинство ошибок отлавливается ещё на стадии разработки
  • Значительно улучшенная обработка ошибок во время выполнения запущенной готовой программы, с использованием блоков try..catch
  • Пользовательские элементы управления (controls) позволяют выделять часто используемые шаблоны, такие как меню сайта
  • Использование метафор, уже применяющихся в Windows-приложениях, например, таких как элементы управления и события
  • Расширяемый набор элементов управления и библиотек классов позволяет быстрее разрабатывать приложения
  • ASP.NET опирается на многоязыковые возможности .NET, что позволяет писать код страниц на VB.NET, Delphi.NET, Visual C#, J# и т. д.
  • Возможность кэширования всей страницы или её части для увеличения производительности
  • Возможность кэширования данных, используемых на странице
  • Возможность разделения визуальной части и бизнес-логики по разным файлам («code behind»)
  • Расширяемая модель обработки запросов
  • Расширенная событийная модель
  • Расширяемая модель серверных элементов управления
  • Наличие master-страниц для задания шаблонов оформления страниц
  • Поддержка CRUD-операций при работе с таблицами через GridView
  • Встроенная поддержка AJAX
  • ASP.NET имеет преимущество в скорости по сравнению с другими технологиями, основанными на скриптах[источник не указан 624 дня].

Расширения[править | править вики-текст]

Корпорация Майкрософт выпустила несколько расширений для ASP.NET:

Примечания[править | править вики-текст]

  1. Счет версий ASP.NET происходит параллельно с .NET Framework.
  2. 1 2 Architecture Journal Profile: Scott Guthrie. The Architecture Journal. Microsoft (January 2007). Проверено 20 апреля 2008. Архивировано из первоисточника 25 августа 2011.
  3. Michiel van Otegem. Interview with Scott Guthrie, creator of ASP.NET(недоступная ссылка — история) (July 24, 2007). Проверено 20 апреля 2008. Архивировано из первоисточника 9 ноября 2007.
  4. Tim Anderson. How ASP.NET began in Java. The Register (October 30, 2007). Проверено 20 апреля 2008. Архивировано из первоисточника 25 августа 2011.

См. также[править | править вики-текст]

Ссылки[править | править вики-текст]

Литература[править | править вики-текст]

  • Адам Фримен ASP.NET MVC 5 с примерами на C# 5.0 для профессионалов, 5-е издание = Pro ASP.NET MVC 5. — М.: «Вильямс», 2014. — 736 с. — ISBN 978-5-8459-1911-3.
  • Джесс Чедвик, Тодд Снайдер, Хришикеш Панда ASP.NET MVC 4: разработка реальных веб-приложений с помощью ASP.NET MVC = Programming ASP.NET MVC 4: Developing Real-World Web Applications with ASP.NET MVC. — М.: «Вильямс», 2013. — 432 с. — ISBN 978-5-8459-1841-3.
  • Адам Фримен ASP.NET 4.5 с примерами на C# 5.0 для профессионалов, 5-е издание = Pro ASP.NET 4.5 in C#, 5th Edition. — М.: «Вильямс», 2014. — 1120 с. — ISBN 978-5-8459-1878-9.
  • Даниэль Арсеновски. Рефакторинг в C# и ASP.NET для профессионалов = Professional Refactoring in C# & ASP.NET. — М.: «Диалектика», 2009. — С. 528. — ISBN 978-5-8459-1618-1.