о жизни, вебе, друзьях, семье и многом другом…
RSS icon Email icon Home icon
  • ASP.NET vs PHP

    Недавно наткнулся на www.gotdotnet.ru на статью Производительность приложений ASP.NET и PHP .

    Резюмируя содержание:
    Gaidar Magdanurov пишет одно и то же приложение сначала на asp.net, потом на php

    написание кода проекта на PHP - ~48 рабочих часов. Разработка аналогичного кода проекта на ASP.NET ~18 часов!

    После этого оказывается, что

    ASP.NET показал на 20-30% большую производительность

    Но, все это из-за того, что php медленнее работает с Microsoft SQL Server, что в общем-то логично:) 

    Таким образом, следует заключить, что все-таки интерпретатор PHP работает шустрее, чем генератор кода ASP.NET

    Выводы:

    1. ASP.NET за счет использования разнообразных серверных контролов позволяет создавать приложения значительно быстрее (одни валидаторы чего стоят!). Да и функции Framework помогают там, где в PHP их просто нет и необходимо создавать их самому. Использование самописных функций в PHP и функций Framework давало закономерное преимущество ASP.NET, причем иногда на 500-600% (закономерно, ведь интерпретатору PHP всякий раз приходилось эти функции анализировать и выполнять заново).
    2. Работа с SQL Server в ASP.NET значительно превосходит работу в PHP, что с хранимыми процедурами, что без. (Тоже закономерно, ведь SQL Server все-таки роднее ASP.NET’у). Кстати, тут стоит отметить и тот факт, что SQL Server по функциям и производительности превосходит MySQL. По функциональности - значительно, по производительности (не используя хранимых процедур, которых в MySQL пока нет) не так уж и сильно, но учитывая возможности SQL Server, можно считать и здесь победу весьма ощутимой.
    3. Работа с файлами и генерация кода и там и там происходят сравнимо (разницу в производительности можно и игнорировать, поскольку она лежит в предеах погрешности эксперимента).
    4. Работа с XML файлами, различными кодировками текста проста до безобразия.

    А теперь немного добрых слов в адрес PHP:
    4. Все-таки PHP дает контролировать HTML код целиком и полностью. Когда-то это плюс, а когда-то ASP.NET, генерирующий код под конкретный броузер, основываясь на его возможностях, все-таки более предпочтителен.
    5. Маленькие тестовые приложения на PHP работают быстрее. Возможно за счет небольшого количества кода и вызываемых функций, тогда вся мощь Framework все-таки не нужна и "висит мертвым грузом"
    6. Обновление файлов программной логики в ASP.NET требует перекомпиляции сборки, в PHP же этого не надо, файлы являются отдельными частями системы, а в ASP.NET сборка является "цельным куском".

    Мои выводы:

    Хоть я и работаю сейчас на asp.net, php мне нравится гораздо больше. Может быть, когда я разберусь во всех (или почти) аспектах программирования на asp.net , я скажу, что последний лучше, но в данный момент я предпочитаю php!