Перейти до вмісту

ASP.NET

Матеріал з Вікіпедії — вільної енциклопедії.

ASP.NET — технологія створення веб-застосунків і веб-сервісів від компанії Майкрософт. Вона є складовою частиною платформи Microsoft.NET і розвитком старішої технології Microsoft ASP. У цей час останньою версією цієї технології є ASP.NET 5.

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

Історія ASP.NET

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

Початковий проект називався «XSP»; Гутрі пояснив в інтерв'ю 2007 року що, «завжди запитують, що означає буква X. У той час вона нічого не значила. XML починається з неї; XSLT починається з неї. Все кльове починається з X, тому ми його так і назвали.» Прототип XSP був написаний на Java, але скоро було вирішено побудувати нову платформу на основі Common Language Runtime (CLR), бо на платформу Java у компанії Microsoft закінчувалась ліцензія. Гутрі описав це рішення як «величезний ризик», тому що успіх нової розробки був пов'язаний з успіхом 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/C++ тощо
  • Можливість кешування всієї сторінки або її частини для збільшення продуктивності
  • Можливість кешування даних, що використовуються на сторінці
  • Можливість поділу візуальної частини та бізнес-логіки з різних файлів («code behind»)
  • Розширювана модель обробки запитів
  • Розширена подієва модель
  • Розширювана модель серверних елементів керування
  • Наявність master-сторінок для завдання шаблонів оформлення сторінок
  • Підтримка CRUD-операцій при роботі з таблицями через GridView
  • Вбудована підтримка AJAX
  • ASP.NET має перевагу у швидкості в порівнянні з іншими технологіями, заснованими на скриптах.

Тут можна навести певні порівняння. Так, ASP — похідна від Win32, XML і HTML; PHP — від XML, HTML, Java і CDI, тоді ASP.NET — від HTML і .NET (XML і XAML відповідно). При цьому, якщо зазвичай Rich Media Application створюють за допомогою Flash, тепер це робиться за допомогою модуля Silverlight, так само через сам ASP.NET. ASP.NET — багатше середовище для розробки та розгортання веб-ресурсів. У ASP.NET можна працювати з будь-якою .NET мовою, аж до Managed C++ і Visual Basic, що дозволяє не замислюватися про перехід на C#.

Розширення

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

Література

  • Мэтью Мак-Дональд, Адам Фримен, Марио Шпушта Microsoft ASP.NET 4.0 с примерами на C# 2010 для профессионалов, 4-е издание = Pro ASP.NET 4.0 in C# 2010, Fourth Edition. — М.: «Вильямс», 2011. — С. 1424. — ISBN 978-5-8459-1702-7
  • Даниэль Арсеновски Рефакторинг в C# и ASP.NET для профессионалов = Professional Refactoring in C# & ASP.NET. — М.: «Диалектика», 2009. — С. 528. — ISBN 978-5-8459-1618-1
  • Стивен Сандерсон ASP.NET MVC Framework с примерами на C# для профессионалов = Pro ASP.NET MVC Framework. — М.: «Вильямс», 2010. — С. 560. — ISBN 978-5-8459-1609-9
  • Роб Камерон, Дэйл Михалк ASP.NET 3.5, компоненты AJAX и серверные элементы управления для профессионалов = Pro ASP.NET 3.5 Server Controls with AJAX Components. — М.: «Вильямс», 2009. — С. 608. — ISBN 978-5-8459-1467-5