Microsoft анонсировала версию 5 ASP.NET и, кажется, рада, что технология 15-летней давности жива и здорова — но так ли это? Если вы замените сердце, разум и душу технологии, все, что у вас останется, — это имя.
Нет сомнений в том, что ASP.NET 5 — отличный инструмент, и если вы планируете использовать его для создания веб-сайтов, он, вероятно, так же хорош, как и многие другие варианты. Однако, если у вас есть веб-сайт, созданный еще на заре ASP, или вы используете что-то вроде SharePoint, вам будет интересно, что происходит. Возможно, вам интересно, почему эта новая вещь вообще называется ASP.NET?
Дело в том, что когда был представлен ASP.NET, у Microsoft была мечта — теперь кажется, что она просто следует тому, что делают все остальные.
Сначала мир Интернета решил, что MVC — лучший вариант, и, угадайте, Microsoft создала ASP.NET MVC. Не слишком много общего с первоначальным видением, но его было проще использовать, и он создавал лучшую архитектуру для клиента. Затем все решили, что Node.js — лучший вариант, и Microsoft представила веб-API.
Итак, теперь у нас есть по крайней мере четыре различных интерпретации того, чем должна быть технология ASP.NET.
Чтобы было ясно, на тот случай, если вы пропустили исходный ASP.NET, идея заключалась в том, чтобы сделать веб-разработку таким же, как разработку для настольных компьютеров. Весь код должен был быть в отдельном файле, код позади, а HTML и код были объединены на этапе компиляции, и сервер выдал страницу, адаптированную для работы с конкретным браузером. Если в форме был элемент управления, то его события обслуживались путем двустороннего обращения к серверу. Все работало так, как если бы веб-страница была формой Windows, и поэтому эту технологию обычно называют веб-формой — и да, она действительно сделала веб-программирование похожим на программирование для настольных компьютеров.
Так где же веб-формы в ASP.NET 5?
Очень хороший вопрос.
В настоящее время похоже, что команда ASP.NET испортила большинство вещей, которые делали ASP.NET другим, и воссоздала технологии других людей. Они не только заменили четкое разделение кода и разметки веб-форм, они даже заменили IIS! Не всем любимый веб-сервер, но замена его системой, начинающей с нуля, такой как WebAPI, не принесет пользы программистам Microsoft.
Если требуется синтаксис бритвы, используйте PHP. Если требуется WebAPI, используйте Node.js и так далее.
Новый ASP.NET 5 является открытым исходным кодом, помимо веб-форм, и может использовать .NET Core с открытым исходным кодом или .NET Framework.
Среда выполнения .NET Core предоставляет кроссплатформенные возможности, но еще не совсем:
Кросс-платформенная версия среды выполнения еще не выпущена, но мы работаем над ней на GitHub и планируем вскоре выпустить официальный предварительный просмотр.
В будущем вы сможете использовать Linux или OSX с .NET. Почему это должно быть хорошо, понять трудно. Если вам нравится работать с Linux или OSX, существует множество технологий, обеспечивающих хорошие альтернативы ASP.NET. Я не говорю, что это никому не нужно, просто цифры не большие.
Другие новые функции ASP.NET 5:
Построен на .NET Core, который поддерживает истинное параллельное управление версиями приложений.
Новый инструмент, упрощающий современную веб-разработку
Единый выровненный веб-стек для веб-интерфейса и веб-API
Готовая к облаку конфигурация на основе среды
Интегрированная поддержка для создания и использования пакетов NuGet
Встроенная поддержка внедрения зависимостей
Возможность размещения на IIS или самостоятельного размещения в собственном процессе
Все хорошо, но актуально только в том случае, если вы отказываетесь от веб-форм и используете какие-то другие технологии. Опять же, я не говорю, что это непривлекательно для некоторых, но опять же, я думаю, что это меньшинство.
В классической технологии ASP.NET есть некоторые улучшения, но они почти не рассматриваются в сносках и не представляют собой больших изменений:
HTTP 2
Привязка асинхронной модели
Компиляторы Roslyn CodeDOM
Вы можете продолжать запускать веб-формы в IIS с помощью .NET 4.5, но вы не можете запускать веб-формы с помощью .NET Core. Учитывая, что .NET Core — это будущее ASP.NET, веб-формы остаются сами по себе.
Большинство пользователей ASP.NET увлеклись этой технологией, когда Microsoft предложила реальную альтернативу. Теперь это просто поздняя и не очень развитая копия того, что вы можете получить в другом месте. В целом технология ASP.NET представляет собой беспорядок, и то, что сейчас происходит, — это сортировка и объединение:
«MVC, веб-API и веб-страницы предоставляют дополнительные функции и часто используются вместе при разработке решения. Однако в прошлых выпусках ASP.NET эти среды программирования были реализованы отдельно и поэтому содержали некоторое дублирование и несогласованность. С MVC 6 мы объединение этих моделей в единую модель программирования «.
Печальный факт заключается в том, что когда дело доходит до веб-технологий, Microsoft, похоже, не имеет представления о том, что может быть хорошим. Первоначальный ASP.NET был заброшен, и на его месте живет что-то другое. Как кто-то может назвать то, что Microsoft только что объявила, ASP.NET, остается загадкой. Это может быть хорошо, но ASP.NET — нет. И идея о том, что это пример непрерывной 15-летней линии единой технологии, — глупая.
Больше информации
Обзор ASP.NET 5
Знакомство с ASP.NET 5
Статьи по Теме
Microsoft Project Helios — новый ASP.NET
CoreCLR теперь с открытым исходным кодом
Будущее ASP.NET раскрыто
Разработка с открытым исходным кодом ASP.NET MVC
Жизнь в эпоху пост-.NET
Microsoft против разработчиков
Чтобы получать информацию о новых статьях на I Programmer, установите панель инструментов I Programmer, подпишитесь на RSS-канал, подпишитесь на нас в Twitter, Facebook, Google+ или Linkedin или подпишитесь на нашу еженедельную новостную рассылку.
Комментарии
Оставьте комментарий или просмотрите существующие комментарии с помощью Disqus
или отправьте свой комментарий по адресу: comments@i-programmer.info