Подтвердить что ты не робот

Есть ли преимущества для классического ASP через ASP.net

Проработав с классическим ASP около 2 лет, создав несколько 100 простых веб-форм, я не вижу хорошей причины для перехода на .net; однако, я не так разбираюсь в .net, поэтому я уверен, что могу пропустить несколько вещей.

Некоторые моменты, которые я часто слышу вокруг работы, можно найти здесь: http://www.packtpub.com/article/Classic-ASP (не то, что я разделяю все эти мысли, но это хорошая прыгающая точка)

Мне очень интересно услышать, что другие могут сказать по этому поводу.

4b9b3361

Ответ 1

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

У вас даже есть выбор WebForms или MVC. Это не преуменьшение, чтобы сказать, что вы просто сошли с ума, если не тщательно изучите, что вам не хватает.

Ответ 2

Если вам нравится ASP, и вы хотите перейти на ASP.NET, пропустите Webforms и изучите MVC.

Ответ 3

Самая большая проблема для меня в том, что я создаю приложения, а не веб-сайты... Пользовательский интерфейс является незначительной частью проблемы, большая часть - это запись уровня бизнес-логики и различных корпоративных коммуникационных компонентов (подключение к SAP с использованием SOAP "Нет проблем!).

.NET Toolkit позволяет мне программировать на замечательном объектно-ориентированном языке (С#) и иметь надежную структуру, которая поможет.

VbScript - это честный язык, чтобы попытаться написать бизнес-приложение.

Однако, если все, что вы делаете, это простая небольшая веб-форма, то обязательно используйте VbScript.

Что касается вашей ссылки, она в основном сводится к следующему:

  • WaaWaa, мне не нравится Visual Studio
  • WaaWaa, я хочу редактировать производственный код на производственном сервере, как идиот.
  • WaaWaa, я не знаю, что развертывание одной скомпилированной DLL - это все, что небольшой сайт должен развернуть приложение asp.net.

В основном, его невежество в двух словах.

Ответ 4

Чтобы сосредоточиться на конкретном вопросе ( "преимущества Classic vs .Net" ), есть две вещи, которые я могу думать о том, что Classic делает это .Net не будет:

1) Включает. Они просто не работают, как вы ожидаете в ASP.Net. Конечно, ASP.Net предоставляет гораздо лучшие способы решения одной и той же задачи, но все равно немного потеряет и может сделать миграцию старого сайта на .Net боль.

2) ASP.Net не будет превышать корневую папку для приложения. Где я нахожусь, у нас есть довольно сложная интрасеть, которая по-прежнему в основном классическая ASP, с небольшим количеством .Net-приложений здесь и там, когда вещи обновляются или добавляются новые вещи. Было бы неплохо, если бы одна копия общего кода была достаточно высокой в ​​иерархии папок, но все же у каждого отдельного приложения было выделено собственное VD. Но тогда, для чего нужен контроль источника, так что это не большая проблема.

Для меня самым большим преимуществом перехода от классического ASP и ASP.Net пока является IDE. Очень приятно иметь возможность щелкнуть правой кнопкой мыши по вызову функции и выбрать "Перейти к определению" вместо того, чтобы копаться, чтобы найти файл, в котором функция фактически реализована. Огромная экономия времени. И поддержка intellisense и безопасность типов при вызове функций также являются благом.

Ответ 5

Для меня я должен сказать, что Classic ASP быстро развивается, прост в использовании/подхвате, не слишком сложный и очень способный к большинству вещей, о которых он просил.

ASP с JScript/Javascript в качестве основного языка на самом деле очень полезен для кодирования. VBScript - это пустая трата мозговой энергии, и я думаю, что это то, что дает классическому ASP свое плохое имя. Плюс его считают медленным, но все статьи о скорости и количестве пользователей основаны на 10-летних серверах. Мы запускаем сайт, ежедневно получающий 60 000 пользователей в день на двух серверах, и процессор почти не мерцает. Современные серверы дают вам больше возможностей играть.

Благодаря огромным скачкам в использовании Javascript, дизайне и лучшей практике в последние годы ASP JScript-кодер может получить много полезных вещей, чтобы сделать жизнь еще проще. Я портировал Mootools на серверную сторону, и с этим мы получаем массу замечательных подсказок, классную модель, отличную модель событий и многое другое. ASP очень весело. UPDATE: у Mootools теперь есть сборка на стороне сервера, которую вы можете скачать (http://mootools.net/download).

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

Я получаю много удовольствия, используя оба в минуту, используя тот, который когда-либо лучше всего подходит для разрыва. У меня отличная CMS Cacher и Thumbnailer, встроенная в .net, которую используют мои сценарии ASP. Лучшее из обоих миров.

Ответ 6

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

Страница Wikipedia ASP.Net содержит раздел о различиях.

Ответ 7

Если вы оглянетесь на свой старый код и скажите: "О чем я думал! Это мусор, теперь я пишу код намного лучше!" то вы развились как программист.

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

Если у вас есть длинный список ошибок, исправлений и улучшений, которые вам сейчас нужны (или хотели бы) для резервного копирования на ваши старые сайты, или ваши "небольшие сайты" становятся все более и более сложными, и это вызывает у вас серьезное горе то вам нужно сделать шаг назад и переоценить, как вы структурируете и поддерживаете эти сайты.

Я бы очень согласился с тем, что ASP.NET - это гораздо более зрелая и эффективная среда программирования. Однако, как и любой инструмент, вам нужно знать (или учиться) правильный способ его использования, поскольку он не будет автоматически превращать вас в "супер-программиста" за одну ночь.

Способ сломать лед - это согласиться с вашим боссом, что следующий "сайт", который вы создаете, разработан в ASP.NET. Объясните ему, что это займет гораздо больше времени, чем то, как вы в настоящее время поставляете сайты, потому что вам нужно "обойти вокруг" ASP.NET, но преимущества x, y и (упражнение осталось читателю!)

Лично я все еще на этапе перехода (и я начал использовать ASP.NET из v1!), так как у меня довольно прочная классическая ASP-инфраструктура, с которой я развился и с ней комфортно. Тем не менее, я использовал стратегию ASP.NET и нашел ее ОЧЕНЬ мощной, и в конечном итоге вы должны писать меньше кода, поскольку так много встроено в инфраструктуру .net, если вы можете найти ее в документации.

Я также рекомендую вам НЕ использовать VB.NET и укусить пулю, чтобы использовать С#. Смена языка довольно незначительна, но вы уменьшаете вероятность написания своих сайтов точно так же, как и раньше. Это помогает разбить вредные привычки, и вы можете научиться новым методам.

Удачи!

Ответ 8

У меня есть одно слово "отладка" - вы никогда не захотите его использовать, но вы всегда это делаете. В .Net, если вы используете Visual Studio, у вас есть фантастический отладчик по сравнению с попыткой отладки кода в ASP.

Ответ 9

Для простых сайтов я предпочитаю ASP или ASP.NET, особенно если вы хорошо знаете HTML. Однако с ASP, отделить бизнес-логику от представления сложно; код, который вы пишете, вероятно, будет сложным для чтения + поддержки.

PHP лучше ASP, хотя и несколько похож на базовый уровень. И вы всегда можете пойти в Rails или Django, если вам интересен автономный стек веб-разработки (но гораздо длиннее кривая обучения).

Ответ 10

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

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

Ответ 11

Все здесь сделали действительные баллы.

Я был классическим разработчиком ASP до 3 лет назад, когда переключился на .NET 2.0.

Я не мог вернуться (хотя мне еще нужно исправить несколько классических сайтов ASP).

Мне не хватает места для записи, ретрансляторы данных отлично подходят для быстрого отображения данных, но наборы данных, предлагая прекрасные функциональные возможности, являются ужасными, когда дело доходит до производительности на "больших" сайтах. Справедливости ради, я делал наборы данных в окольном пути с массивами в классическом ASP. Единственный раз, когда я использую наборы данных, - это для корзин сайтов для электронной коммерции. Я пропустил rs.movenext и т.д.

FlySwat сделала одну из самых больших ошибок, которые я вижу, что многие разработчики делают.

Да, бизнес-логика, OO и т.д., что .NET приносит отличные возможности (масштабируемость, я бы не соглашался на 100%, но определенно более расширяемый), но при использовании ASP.NET вы все равно создаете WEB-САЙТ. Забудьте об этом вздохе с использованием приложения терминологии. Я встречаю много замечательных разработчиков .NET, которые создают сайты N-уровня, OO, но у них нет реального понимания уникальности построения веб-сайта; такие как состояние, или кровавая досадная проблема, что они полагаются на Javascript. Большинство из этих разработчиков создают сайты типа MS, которые обычно не встречают W3C, arent cross browser friendly и никогда грациозно не деградируют. И нет, это неприемлемо даже для приложений back office, которые будут совместимы только с IE.

.NET также имеет тенденцию "откармливать" простые сайты..NET во многих отношениях был способом заставить разработчиков WinForm начать создавать веб-сайты (или, как они предпочитают, веб-приложения). Проблема заключалась в том, что это привело к созданию кучки разработчиков, у которых была роскошь, не беспокоиться о состоянии, стандартах и ​​т.д.

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

... НО, хотя у меня есть приятные воспоминания об классическом ASP, что я могу сделать с .NET с точки зрения обработки изображений, шифрования, сжатия, простой интеграции веб-сервисов, надлежащего OO, приличного n-уровня, расширяемости и т.д.. Это то, что дает .NET преимущество. Даже такие глупые вещи, как просто добавление одной строки кода в файл web.config, чтобы сказать ему, чтобы записать идентификатор sessionID в очередь, если пользователь не принимает файлы cookie (это была боль в классическом ASP), отлично.

Перейдите в .NET, вы не пожалеете об этом, но иногда дайте себе (особенно если вы не знаете о OO (наследование, абстракция, полиморфизм и инкапсуляция). Не начинайте создавать сайты .NET в классическом режиме совместимости, а просто дешевый способ сделать .NET и youll по-прежнему в конечном итоге использовать классические методы ASP.Если VBScript был вашим основным языком разработки, скачок не был таким же простым, как MS или другие, вы бы поверили.

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

Ответ 12

Редко ответ на этот вопрос отвечает на вопрос. Вместо того, чтобы проложить легкий путь, я возьму на него удар:

Несколько преимуществ, которые не были упомянуты (JScript-ориентированный):

  • Вы можете изучить весь язык и сохранить его в своей памяти, если используете его достаточно - я не знаю никого, кто утверждает, что знает всю платформу .NET; это делает кодирование очень быстрым.
  • Слабая настройка - это может привести к более быстрому коду, когда вы быстро удаляете что-то, например, действительно ли вы действительно заботитесь о разнице между char и string в большинстве случаев? (вставьте здесь религиозную пламенную войну)
  • Eval: это ключевое слово с очень высоким уровнем злокачественности на самом деле невероятно мощное и позволяет вам манипулировать вашим кодом во время выполнения по-настоящему интересным способом.
  • Совместимость с языком клиент/сервер. JScript-сходство с Javascript означает, что вы можете использовать тот же файл include для проверки на стороне сервера, как вы используете для клиентской стороны.

Ответ 13

Если все, что вы делаете, это простые маленькие веб-страницы, то делайте что угодно. Или еще лучше изучить PHP. Большинство ответов вы получите от людей, которые делают веб-приложения, и для этого asp.net ударяет штаны от классического asp по мощности и поддерживаемости, хотя.

Ответ 14

Я согласен со всеми здесь, кроме тех, кто сказал пропустить веб-формы и перейти прямо к MVC. Это не полезно. Webforms очень полезен для приложений, управляемых базами данных, которые используют множество табличных дисплеев и т.д. Я работал над некоторыми очень большими приложениями веб-форм, и он отлично работает. MVC хорош для более интерактивных приложений типа "Web 2.0".

Ответ 15

Сделав "переименовать asp в aspx и изменить до тех пор, пока он не компилирует" порт приложения в asp.net, я бы сказал, что даже классическое программирование asp в .NET лучше, чем asp classic. VS, конечно, побудит вас попасть в яму успеха и привлечь вас к веб-формам и кодовому способу делать что-то, но язык достаточно выразителен, чтобы воспроизвести образцы классики asp (а именно, множество золотых самородков /inline код, страницы перекрестных проводок и т.д.)

Я думаю, что раньше слышал, что вы можете писать COBOL на любом языке. Это верно для классического asp.

Ответ 16

Я всегда использую Classic ASP, он работает красиво.

Я пробовал ASP.net пару лет, но это было слишком сложно для большинства веб-сайтов. Мои клиенты не понравились, потому что они не могли понять это. Им также нравится знать, что они не заперты в одном разработчике.

ASP.NET продолжает меняться и требует огромной/постоянной кривой обучения, чтобы поддерживать ток. MS переключил основной язык на С#, который сделал переход намного сложнее.

Моя производительность замедлилась до обхода с .net, потому что я навсегда искал учебники или примеры того, как делать все.

Visual Studio - это свиной sloooooow.

PHP имеет уродливый синтаксис и слишком много разных фреймворков, что делает невозможным обучение для целей разработчика. Хорошо только для использования внутрисетевого канала с выделенным персоналом, на мой взгляд.

Классический ASP закрыт и отлично работает сегодня, как это было много лет назад. С несколькими библиотечными файлами написание кода легко, поскольку пирог и примеры неограниченны в Интернете.

Правильно написано, что большинство людей не делает, vbscript - это чистый читаемый, эффективный код. Я оставляю материал на стороне клиента для библиотек, таких как jQuery, и считаю, что я во много раз более продуктивен.

Ответ 18

Если вы используете классический asp в этот момент (без мандата от вашего CTO), вам нужно увидеть сжатие. или вы мазохист. Или как сатанист, и в этом случае вам бы хотелось, чтобы вы были в аду!: p

В серьезной ноте... для веб-приложений используется WebForms.

Для легких, быстрых и грязных веб-сайтов используйте ASP.NET MVC.

Хорошо, что ASP - это то, что вы можете использовать VB.NET, С#, Eiffel, Boo или PHP для своего языка! Для PHP проверьте Phalanger...

Ответ 19

Поскольку мне платят за создание решений и не писать код, я просто предпочитаю ASP.NET поверх классического ASP. В то время как классический ASP по-прежнему практичен для очень маленьких, простых сайтов, все еще много возможностей для ASP.NET при написании более сложных сайтов. Кроме того, даже с ASP.NET вы все равно можете использовать Notepad для записи самих файлов .aspx, включая встроенный код vb или С#. Visual Studio просто предоставляет много дополнительных функций, что избавляет от необходимости писать больше кода самостоятельно. И, как я уже сказал, мне не платят за написание кода...