Разница между .asp и .aspx

ASP является основой для веб-разработки и поддерживает различные модели, такие как классический ASP, веб-формы ASP.NET, ASP.NET MVC, веб-страницы ASP.NET, API-интерфейс ASP.NET и ASP.NET Core..

ASP и ASP.NET - это серверные технологии, выполняющие код на веб-сервере..

Активные серверные страницы (ASP), разработанные Microsoft, такие же, как HTML-страницы, содержащие скрипты и встроенные носители, а затем обработанные на веб-сервере. В прошлом (с классическим ASP) он развертывался только в среде Microsoft..

Активные серверные страницы имеют расширения файлов .гадюка (для Classic ASP) или .ASPX (для ASP.NET)

Когда веб-пользователь инициирует запрос, вызывая страницу ASP или ASP.NET, веб-сервер обрабатывает Активные серверные страницы и механизм сценариев генерирует контент, отображаемый обратно (на лету) веб-пользователю.  ASP работает с любым браузером, который поддерживает HTML (так как вывод HTML).

Активные серверные страницы представить интерфейс веб-приложений, запустив ActiveX скрипты и компоненты, вставленные в веб-страницы.

ActiveX похож на Java Applets и использует объектно-ориентированные технологии для программистов, чтобы легче разрабатывать мощные и динамические веб-приложения. Эти сценарии и компоненты упакованы как элементы управления ActiveX, которые можно использовать многократно и могут использоваться разными программистами и программами..

ASP.NET был впервые выпущен в 2002 году в .NET Framework 1.0, и заменил Classic ASP, который выпустил три версии между 1996 и 2000.

Последняя версия Classic ASP была выпущена в ноябре 2000 года как ASP 3.0 для IIS 5.0 и до сих пор официально поддерживается Microsoft до 2020 года..

Это может быть классический, но ASP по-прежнему мощный подход к динамическим веб-страницам.

Классический ASP

ASP изначально была дополнительной функцией для Microsoft IIS (информационный сервер Интернета), однако с выпуском Windows Server 2000 он стал постоянным и бесплатным компонентом IIS.

Microsoft Internet Information Services - это настраиваемый модульный механизм веб-сервера Microsoft, который поддерживает протоколы HTTP, HTTPS, FTP, FTPS, SMTP и NNTP..

Будучи первым серверным языком сценариев Microsoft для динамических веб-страниц, Classic ASP (.asp) мог работать только на платформе Microsoft, поскольку использовались два языка: VBScript и JScript. В то время Microsoft не предоставляла встроенную поддержку других языков программирования..

VBScript на самом деле был разработан для браузеров Internet Explorer и ограничен функциональностью в пределах своих возможностей сценариев, а JScript поддерживается только в браузерах Internet Explorer и Netscape..

.NET Framework

Microsoft .NET Framework[i] это среда для разработчиков для создания динамических веб-сайтов, веб-приложений и веб-сервисов.

Это программная среда (среда), которая предоставляет большую библиотеку классов (Framework Class Library - FCL) и поддерживает несколько языков, позволяющих платформе обрабатывать код, написанный на других языках.

.NET программы выполняются в Common Language Runtime (CLR) среда, поэтому по сути FCL и CLR составляют .NET Framework.

.За последние 15 лет NET выпустила накопительные обновления и подкомпоненты, предоставляя стабильную и широко внедряемую веб-платформу, которая больше не является эксклюзивной для среды Microsoft..

Хотя выпуски ASP.NET тесно параллельны выпускам IIS, его можно разрабатывать на других платформах, таких как Spring.NET (framework для Java).

Миграция с ASP на ASPX

С .ASPX замена .гадюка, разработчикам рекомендуется сосредоточиться на разработке приложений с моделью GUI, управляемой событиями, вместо веб-сценариев с использованием ASP (и PHP). PHP все еще активно разрабатывается в отличие от ASP, который просто заменяется ASP.NET.

Существует обширный список улучшений, которые могли бы мотивировать решение о миграции, с очень небольшим количеством причин не делать этого - давайте рассмотрим некоторые мотиваторы:

  • Поскольку ASP.NET является скомпилированным кодом, он работает быстрее с более ранним обнаружением ошибок на этапе разработки. Кроме того, обработка ошибок значительно улучшена по сравнению с ASP.
  • NET может кэшировать всю веб-страницу (или только ее части), что заметно повышает производительность - когда загрузка страницы происходит намного быстрее, если контент уже находится там, ожидая повторного вызова.
  • NET имеет Сеансовые состояния сохранить введенные данные, и в некоторых случаях это стало необходимостью, когда действие или задачу необходимо отслеживать в Интернете (например, захват расписания или покупки в Интернете) или даже просто для запоминания данных для входа.
  • В ASP.NET 4.6 в Windows 10 есть поддержка HTTP / 2 [ii]. HTTP / 2 - это версия HTTP - веб-протокола, который мы знаем. Скорость и производительность считаются движущими факторами перехода на HTTP / 2..
  • NET предоставляет обширные элементы управления и библиотеки классов, а также пользовательские элементы управления, которые выложены с использованием визуальных редакторов.
  • NET обрабатывает утечки памяти путем выгрузки и перезагрузки приложения.
  • В ASP.NET 2.0 были внесены улучшения для обеспечения соответствия стандартам, поскольку сгенерированный код, отображаемый обратно веб-пользователю, не всегда проверялся на соответствие стандартам W3C / ECMA..

ASP.NET на платформах не от Microsoft

ASP.NET и Apache

mod_mono Модуль Apache запускает приложения ASP.NET на веб-сервере Apache и управляет запросами между приложением и внешним процессом Mono, на котором размещено приложение ASP.NET. Этот внешний хост является частью модуля XSP, называемого мод-моно-сервер.

ASP.NET и XSP

Разработанный в C #, XSP представляет собой автономный веб-сервер, на котором работают приложения ASP.NET. Он имеет свою собственную библиотеку страниц и элементов управления, используемых для тестирования сервера и приложений ASP.NET.

ASP.NET с Nginx

ASP.NET можно разместить на Nginx (механизм X), который является HTTP-сервером и высокопроизводительным обратным прокси-сервером, поддерживающим веб-приложения ASP.NET и ASP.NET MVC..

Будущее ASP.NET

Индустрия ожидала, что ASP.NET 5 станет следующей крупной разработкой для ASP.NET, однако Microsoft прекратила активную разработку, чтобы сосредоточиться на ASP.NET Core вместо.

ASP.NET Core - это кроссплатформенная платформа с открытым исходным кодом для разработки и развертывания облачных приложений. Приложения, разработанные в ASP.NET Core, могут работать в Windows, Mac и Linux..

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