PHP против ASP - делайте ставки, господа!
Андрей Кухарчик
🕛 05.07.2006, 11:16
"ASP - это функциональная, удобная технология, но я выбираю PHP.." - примерно так начинается небольшая статья-размышление на тему "кто самее", найденная мной на сайте SimplyWebDesign.com (статья: Why PHP is Better than ASP). Я подумал, что возможно кому-то из наших посетителей тоже захочется пофилософствовать на эту тему, и потому предлагаю вам перевод этой статьи. Свое мнение, я выскажу в конце. Не стоит относиться ко всему нижеизложенному очень серьезно, кипятиться по пустякам, обзывать меня зеленым недоношенным ламером - я всего лишь переводчик (aka Promt ;)) .. ASP? PHP? Active Server Pages (ASP) - это технология Microsoft, позволяющая создавать динамические web страницы. ASP поддерживает несколько языков программирования, наиболее распространенным является VBScript (опять же разработка Microsoft). Соответственно, ASP - это технология для Windows систем. (Подробнее об ASP: Что за зверь, этот ASP? ) PHP - аналог ASP, который может работать как в среде UNIX так и в Windows. PHP - это система разработки скриптов, включающая в себя CGI - интерфейс, интерпретатор языка и набор функций для доступа к базам данных и различным объектам WWW. (Подробнее о PHP: PHP - система разработки скриптов ) Так кто же из этих двоих лучше? По мнению автора статьи, PHP выигрывает у ASP как в плане технических (функциональных) возможностей, так и по критерию популярности/общедоступности.
Скорость. ASP никогда не станет резвее PHP! ASP технология основана на модели COM (COM - Component Object Model), т.е. работать вы будете с объектами и компонентами. Например, для вывода информации по запросу клиента задействуется объект Response, при обращении к базе данных, задействуется еще один объект, для работы с файлами вызывается третий объект и т.д. Таким образом, подобное нагромождение замедляет работу ASP приложения. При использовании модулей PHP, мы работаем в едином пространстве памяти PHP, и это несколько быстрее, чем использование разрозненных объектов, задействованных в различных процессах. Испытание Бэ Дэ Проверка скорости работы с MS SQL 7.0. PHP: используя интерфейс ODBC ( Open Database Connectivity) доступ к базе данных - 9.54 сек. ASP: Используя COM интерфейс для работы с ODBC - 17.28 сек (т.е. на 80% дольше). OLEDB - микрософтская COM разработка для взаимодействия с базами данных, она "быстрее" ODBC, но если мы задействуем интерфейс PHP MYSQL, то выигрыш (на 200%) опять за PHP. Это только говорит о том, что открытость кода PHP, а значит свободный доступ всех желающих к разработке и тестированию движка PHP - все это позволило создать более совершенную технологию, нежели ту, которая разрабатывалась в недрах Microsoft. А как вы используете память? Если вы работаете под IIS4, и ASP вставка header.asp инклудится в 20 web страниц, то 20 копий этих самых header.asp будут содержаться в памяти. Подобного беспредела уже нет в IIS5, который имеет улучшенную модель управления памятью, но такие радости жизни IIS5 доступны лишь для пользователей Windows 2000. В отличии от этого, PHP грузит и инклудит только те файлы, которые непосредственно требуются. Деньги давай! Что? Вам необходимы возможности шифрования? Покупайте ASPEncrypt! Хотите работать с E-Mail? Купите ServerObject's Qmail! Хотите загрузку файлов? Предлагаем купить Software Artisans SA-FileUp! Вот так обстоят дела с ASP.. А PHP? Халява, сэр! (Green Kakadu: стоит отметить, что как для ASP, так и для PHP существует множество платных и бесплатных разработок, в случае ASP - это разработки не только Microsofta, но и сторонних фирм. Советую заглянуть на HotScripts.com) И что? А то, что PHP может работать как на Windows сервере, так и на UNIX'ном, а вот ASP только на Windows. Причем, как вы догадались, желательно чтоб это был IIS5, который позволяет нормально работать с памятью. А цены? Из-за того, что Microsoft'кий софт денег стоит, то и Windows хостинг стоит несколько дороже, чем UNIX'ный! Ваше мнение? http://www.simplywebdesign Вот. Готово. Теперь мое мнение.. Я думаю, что статья несколько однобока - если бы все было так плохо, то ASP послали бы подальше, и использовали бы PHP, но тем не менее технология ASP популярна и развивается, потому не стоит говорить о ней как о динозавре. Ну а к тому же не стоит забывать о новом сюрпризе от Microsoft - ASP.NET К сожалению, я не знаю ни одного (PHP), ни другого (ASP)- потому судить о чем-либо не имею права. Но весьма интересно ваше мнение на этот счет.. Так что пишите комментарии! За кривости перевода прошу прощения - как мог! Если заметите технические несуразности перевода - смело говорите, я вполне мог ляпнуть что-то не то..