ASP.NET vs PHP

Спонсор поста: Jimm ASPRO

Манимейкеры повсеместно используют для своих сайтов PHP. Это вполне объяснимо: поддержка большинством хостингов, простота базового изучения (быстро что-нибудь подправить), большое количество специалистов и, конечно же, огромный выбор готовых CMS. Я и сам, например, для большинства своих проектов использую WordPress (написанный, как известно на PHP).

ASP.NET vs PHP* Комикс слева кликабельный.

Но если вы используете не готовое решение, а создаете (сами или на заказ) движок с нуля под свои собственные нужды, многие преимущества PHP отходят на второй план. Давайте рассмотрим тему поста в этом контексте подробнее.

Преимущества PHP

  1. Простота. При разработке сложной системы это преимущество превращается в недостаток — неполная реализация объектности, отсутствие строгой типизации и других свойств, присущих полноценным языкам, приводит к проблемам в развитии и поддержке сложной системы.
  2. Большой выбор хостингов. При разработке сайта с нуля стоимость хостинга уходит на второй план по сравнению со стоимостью разработки.
  3. Полная бесплатность, включая платформу. Довольно большой плюс, если вы разрабатываете маштабируемую систему, которая должна работать на десятках и сотнях серверах. В этом случае вы сэкономите много денег, используя бесплатную ОС. Если вашему сайту достаточно одного сервера, то стоимостью ОС можно пренебречь. То же относится и виртуальному хостингу.

Преимущества ASP.NET

  1. Полноценный язык. Более того, платформа .NET позволяет использовать любой .NET-совместимый язык (наиболее популярны C# и VB.NET, но есть Python, Delphi и другие). Особенно отмечу удобный объектно-ориентированный синтаксис базовых библиотек.
  2. Компиляция программ. В отличие от PHP, в .NET код компилируется, благодаря чему он исполняется гораздо быстрее.
  3. Идентичность среды разработки и деплоймента. Если вы используете Windows, то при разработки на PHP ваша среда разработки отличается от серверной (т.к. там стоит Linux). При разработке на ASP.NET вы используете одинаковую среду и на девелоперских компьютерах и на серверах в Интернете.
  4. Полная поддержка юникода. Все сайты на ASP.NET автоматически поддерживают UTF-8, чего не скажешь о сайтах на PHP.
  5. Огромные возможности, включенные в состав стандартных библиотек. В PHP многие аналогичные вещи реализуются сторонними библиотеками, но их использование создает дополнительные проблемы: отсутствие библиотек на хостинге, необходимость изучения.
  6. MS SQL vs MySql. Как PHP программисты используют в большинстве случаев MySql, так дотнетчики используют MS SQL. Последний обладает более широкими возможностями, чем MySql.

По правде говоря, я не представляю, как на PHP создаются сложные системы типа того же Вордпресса. На ASP.NET все делается гораздо проще и понятнее.

Не согласны? Пишите в комментарии.

  • Все очень просто.
    Чем более прост инструмент, тем более шансов что то что на нем будет написано с нормальной функциональностью будет шедевром.
    Это можно сравнить… ну например с летчиками. Пока летали на этажерках большая часть были асами (остальные быстро гибли) сейчас процесс выбраковки идет не столь жестко.

    Правда с php програмистами тоже выбраковки жесткой нету, но их много поэтому время от времени различные проекты выстреливают.

    А насчет разработки энтерпрайза… php в топку, ему там не место. Хотя и на ASP и на J2EE тоже зачастую такого наваяют по сравнению с чем WP кажется верхом совершенства.

    Ну и конечно хостинг определяет очень многое. Хотя можно взять пример с Кактуса и дома сервачок завести :)

  • Да я вот пытаюсь ASP в массы двигать :-)
    Энтерпрайз давно на дотнете или джаве делают.

    Для меня PHP рулит только в области готовых решений.

  • asd

    [quote]По правде говоря, я не представляю, как на PHP создаются сложные системы типа того же Вордпресса.[/quote]
    Wordpress – это сложная система?!

  • [quote]Wordpress – это сложная система?![/quote]

    Смотря, конечно, с чем сравнивать. По сравнению с небольшим сайтом – сложная.
    Вообще, почти любая массовая CMS становится сложной вещью, т.к. приходится многие вещи делать универсально. При разработке сайта под конкретные нужды многие вещи можно значительно упростить.

  • Все зависит от программиста. Насколько он правильно сделал дизайн системы, настолько она и будет потом понятна.

    WordPress на самом деле очень хоршо и просто написана.

    А тут недавно по работе надо было phpBB переделать под свои нужды. Вот это был просто ад. Они там настолько увлеклись…

  • То, что зависит от программиста, понятно. Просто на PHP довольно сложно писать хороший код.

  • Первый комент вообще зачетный – сравнение про летчиков!

    А у меня такой вопрос к автору – покажите примеры популярных и хорошо работающих CMS на ASP? Можно платные.

  • [quote]А у меня такой вопрос к автору – покажите примеры популярных и хорошо работающих CMS на ASP?[/quote]

    DotNetNuke, BlogEngine.NET, Community Server

    Бесплатных решений, к сожалению, на порядок меньше чем на PHP :-(
    Но я, например, не нашел идеальной бесплатной CMS для партнерского магазина, поэтому, буду писать свою, на ASP.NET

  • [quote]По правде говоря, я не представляю, как на PHP создаются сложные системы типа того же Вордпресса.[/quote]
    Наверное, это от незнания этого языка. Как пример:[quote]"Yahoo has decided to switch from a proprietary system written in C/C++ to PHP for their backend scripting"[/quote]

  • На С++ писать под веб, тоже, не сладко :-)

  • [quote]я, например, не нашел идеальной бесплатной CMS для партнерского магазина, поэтому, буду писать свою, на ASP.NET[/quote]

    Как Ваши успехи? Сейчас тоже занимаюсь написанием своей CMS для интернет магазина. Думаю через пару недель будет первый магазин.

  • Gex

    Сам программирую на ASP.NET и программировал на PHP. Есть с чем сравнить разница в пользу ASP.NET. Есть правда проблема такого сравнения, как правило те кто используют ASP.NET знают и PHP. Наборот это редко :-) Спасибо за классный блог!

  • kv4

    Блог интересный.
    Я программирую на ASP.NET – с него и начал. PHP не знаю савсем почти… Сказать по правде, обучение ASP.NET на начальном этапе (особенно если самостоятельное) заимает достаточно много времени. Но когда разберешся с концепцией, все становится ясным, понятным.

  • Boss

    я думаю сайты зделанные на PHP лучьше индексируются.

  • Неправильно думаете.

  • На мой взгляд самый большой минус ASP это дорогой хостинг. А для php можно вообще и бесплатный найти.
    Когда ставил задачу ASP или PHP пришёл к выводу, что блог, домашнюю страницу, ну или маленький сайтик лучше писать на PHP. На ASP бы писал ради интереса.

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

  • Вы немного не точно написали, да .Net компилируется, но компилируется он в байткод, для php есть целый набор акселераторов которые делают тоже самое, но без них код на php работает быстрее аналогичного кода на .net за счёт того что все основные функции написаны на СИ, например вы рендерите страницу сайта где 100кб кода, в PHP интерпретируется только эти 100кб кода, в .asp 30000-10000 потому что кроме написанного вами кода нужно интерпретировать из байт кода ещё и все стандартные библиотеки! кстати вот вам таблица сравнения) http://venturait.com/images/php-asp.gif
    а на счёт крупных проектов – поясните, в чём пхп уступает? Язык не менее функциональный! (речь конечно идёт о 5 версии)

  • Еще в .NET 1.0 можно было скомпилировать приложение в коды процессора. А в .NET 2.0 приложение скомпилится после первого запуска и уже останется в скомпилированном виде. Так что задержки могут возникнуть только при первом запуске, что, согласитесь, несущественно.

    Приведенная таблица сделана совершенно от фонаря. Например, есть реализация Mono, работающая на Линуксе. И в настоящий момент доступны исходники .NET.

    В PHP 5, конечно, добавили поддержку ООП. Но объектные возможности гораздо слабее, чем в .NET 3.5. Кроме того, .NET изначально объектный. Например, строка – это объект и все встроенные функции работы со строками являются методами этого объекта, что очень удобно.
    Есть визуальные контролы, которые при грамотном использовании позволяют быстро сделать многие вещи.

    В конце концов, в PHP нет декларации переменных – одно это меня убивает!

  • Алексей

    Спасибо за заметочку. Не написали несколько преимуществ РНР – огромный набор бесплатных разных компонентов, CMS, форумов и того подобного…. дотнетнюк например много чем уступает даже вордпрессу, с форумами на дотнете вообще беда, как впрочем и с бесплатными компонентами.

    Для маленьких снесложных сайтов, думаю, РНР – самое то. Ну там портал компании с новостями и что-нить подобное.

    Enterprise-приложения вообще не представляю как на нем писать. Там же как миниум веб\винсервис нужен (он же демон в юниксе). А значит, интерфейс доступа нужен. А значит… ой, мля, лучше не думать. А если многопоточное? Оооонй мля…. ненене, ну нафиг. Этож не дотнет ремотинг где все двумя строчками подключается и не wsdl, который сам классы для вебсервиса генерит. В общем, тут РНР того… в гробик без вариантов Дотнет или джаву поперченую по вкусу подавайте. Хотя какие плюсы у джавы? Ну да, самый главный – кроссплатформенность. А оно нужно? Неа. Ну да, винда глючная. Может даже скл серверу не доверяем. Ну дык возьмем оракл и поставим базу на FreeBSD. А винсервис пусть на другой машинке крутится. Что-что? Почему нельзя запустить там же где база? Что за тупой вопрос.А зачем сервис тогда вообще нужен был? Сразу бы сказали, мы бы может и СКЛ бы в код запихали еще, и c непонятными хранимками бы не мучались. И вообще нафиг нам тогда разрабатывать, давайте купим лучше MS Access. А как еще отвечать на тупые вопросы?

    В обшщем, вот такие вот размышления на тему.

  • Алексей

    Ах да, совсем забыл еще один минус дотнета. К нему нужно обфускатор покупать. А то программу разделают (ее впрочем влюбом случае и с обфускатором разделают если серьезно возьмутся – тут ничто кроме USB-ключа не поможет). А РНР это не грозит. Потому что большинство скриптов изначально написано горе-программерами так, что даже самый крутой обфускатор обиженно утирает сопельки в дальнем уголке. Так что обфускатор РНР не нужен вообще. И пока твою обфусцированную супер-монстрючую прогу ломают 10 хакеров из интереса, какой-нить говноскрипт не тронет никто. И никогда. А то руки мыть потом.

  • Дмитрий

    "В конце концов, в PHP нет декларации переменных – одно это меня убивает!" – Вы имеете ввиду строгую типизацию?

  • я имею в виду, что можно написать, например, так:
    a1 = 1;

    a1 = "1";

  • Ashot

    На PHP разок написал один сайт, большого опыта не имею, за ASP.NET только взялся, а так на Framework пишу WinForms Applications, раньше писал на VB6.
    Так вот, тут вроде никто не сказал про удобство разработки в самой среде VisualStudio. MS переплюнула всех в Zend даже близко не стоит.
    А возможность где попало объявлять переменные, меня дико раздражает еще с FoxPro….. 20% времени уходит на поиск таких вот опечаток.
    а по поводу ООП, в PHP все притянуто за уши…. хотя может уже все изменилось, давно я с PHP не сталкивался.

  • Приходится писать и на php, и на asp.net. Так что имею право ругать обе технологии)

    PHP приятен своей гибкостью, что очень удобно, когда делаешь совсем небольшие сайты. Для несколько более серьезной разработки есть удобные фреймворки типа Code Igniter. Там и MVC есть, и много других вкусностей. Одним словом, писать небольшие сайты с базой в десяток таблиц и парой-тройкой разделов легко и приятно. Когда проект выползает за эти границы, становится уже тяжко. Ибо в php ни нормального повторного использования кода нет, ни отладчика, ни строгой типизации. Честное слово, я удивляюсь, как людям удается создавать и развивать на php проекты такие хорошие и достаточно сложные проекты, вроде WordPress.

    Понятно, что на asp.net удобно писать большие порталы – он для этого и создавался как конкурент Явы. Но нужно помнить, что php создавался именно для разработки мелких сайтов. Это уже со временем разработчики на нем выросли из мелких проектов и продолжили писать на нем крупные сайты, т.к. попросту не знали (так хорошо) других языков программирования.

  • IceFrog

    С каких пор PHP разрабатывался для мелких сайтов? Все крупные сайты написаны на PHP, в силу его производительности. Если и ставить в конкуренты кого-либо, то только Python или тотже Ruby, который по возможностям переплюнет ASP…

    • admin

      Неужели все? :-)
      И наверное из-за огромной производительности PHP придумали различные eAccelerator’ы?

      • Armen

        Большинство написано на PHP и если хотите поспорить, то давайте поспорим. Если нужно разрабатывать именно вэб-проект, а не энтерпрайс систему для банка или чего-либо еще, то PHP Framework – правильный выбор. Не понимаю идиотов, которые говорят, что пхп не для энтерпрайс систем. Остается добавить только: “спасибо, кэп!”

        Но кто вам сказал, что пхп не подходит для разработки крупных вэб-приложений? Большой для вас – это только Майкрософт или Гугл? Неужели вы настолько амбициозны, что собираетесь написать такой проект и поэтому PHP вам не подходит? Для разработки больших приложений есть такие замечательные фреймворки, как Yii, Zend или уже названный CI, например. Приведу один пример преимуществ Yii – он позволяет создавать Foreign keys в MyISAM таблицах MySQL. Это означает, что вы имеете возможность использовать самую быструю БД, но при этом ссылочная целостность сохраняется. MSSQL во многом лучше, чем MySQL, но последний обладает тремяочень весомыми для вэба преимуществами – бесплатность, скорость, работает на любом сервере и ОС.

        Насчет ускорителей php кода – факт остается фактом, что ускорители есть и PHP с их помощью работает быстрее, чем ASP. Вам обидно, что это так, поэтому так рьяно осуждаете PHP? Зачем врать людям? Скажите честно, что если надо разработать САЙТ, ПОРТАЛ или даже БОЛЬШОЕ ВЭБ-ПРИЛОЖЕНИЕ, то самый лучший выбор для этого – PHP, а не asp или jsp. И очевидно, что PHP не создан для того, чтобы разрабатывать энтерпрайс системы, об этом даже говорить не надо, потому что это равносильно тому, что вы жалуетесь о невозможности взлететь на автомобиле. Но факт есть факт – в городе автомобиль удобнее самолета.

        • Я ни в чем не врал, лишь обрисовал свое видение двух платформ для разработки под веб. Судя по вашему комментарию, вы – непримеримый фанатик PHP, поэтому, не думаю, что имеет смысл спорить.

      • Vuvu

        Да если PHP нагрузить сильно, очень сильно, он затормозит. Ток от этого PHP так уш хуже не становится)) Мы же на нем сайты и корпоративные порталы пишем и еще многое другое, а не тестуруем его под милионы и мириады атмосфер давления, на дне Марианской впадины))) Кстати сам я не тестировал но админ говорил, причем IIS админ, что последний то есть IIS виснет при незначительной нагрузге. Так что все не так однозначно. И главное оч. многие пишут о не комилируемости PHP, а интересно, все они намерены создать проекты крупнее Wikipedia, Facebook, WordPress, flickr, Drupal, Vkontakte и даже phpBB ? ))))))))) Ребят или вам просто пообщятся интересно ?))

  • Vuglu

    Можно пример крупного посещаемого портала на ASP.NET? Бинг что ле? :)))
    Отсутствие нормальной работы в ASP.NET с запросом GET и (вечно неработающая кнопка BACK) как следствие убивают напрочь все желание работать с этой платформой.

    В PHP есть все необходимое для того, чтобы писать отличный код. И последний, но самый важный момент, который сводит на нет все “преимущества” ASP.NET: асп работает под виндой и только под виндой. Делать крупные серверные проекты под виндой — мазохизм. Без вечно сидящего и перезагружающего все что только можно админа никак не получится. Не верю.

    • Например, сайт Microsoft – один из самых посещаемых сайтов в мире (21-е место по Алексе). Ядро Бинга, думаю, написано на Си :-).

      Не вижу никаких проблем использовать GET в ASP.NET. Конечно, к нему не получится прицепить обработчики WinForms, но обработать его руками никто не запрещает. Более того, использовать WinForms, тоже, никто не заставляет. Сейчас, например, набирает популярность MVC Framework.

      Мне кажется, что вы не пробовали писать на ASP.NET. Я пробовал и то и другое, и на ASP.NET мне работать намного удобнее и приятнее.

      По поводу винды: во-первых есть моно, но я считаю это извращением, тем более там нет поддержки самых последних версий фреймворка. Во-вторых, сама по себе Windows довольно стабильная система. Конечно, ее можно уронить установкой “левых” драйверов, но зачем же это делать на сервере. А благодаря визуальному интерфейсу управлять сервером может любой разработчик, т.е. админ вообще не нужен, чего не скажешь о линукс серверах.

      • Ooopenair

        Ну насчёт стабильности Windows вы загнули, хуже винды сложно что-то представить)

        • Вам давно пора проапгрейдить Windows 95 на семерку или хотя бы XP :-)
          Я уже давно забыл, что такое “нестабильность винды”. Если и бывают проблемы, то от кривых драйверов или программ, работающих на уровне системы.

  • Coderm

    Не мог не отписаться на такую веселую тему. Пусть простят меня ярые поклонники php, но достаточно перечислить только лишь некоторые преимущества Asp.Net, чтобы понять, что php пока находится на уровне поделки (хотя и очень популярной и уже достаточно нормально сделанной).

    1) Если рядовой php программист поставит себе Visual Studio 2010 (тем кто говорит, что она сложна в освоении, можно просто дальше не читать) то он откроет для себя просто прекрасную среду разработки с отлично отлаженным Intellisense, прекрасным быстродействием даже на больших проектах, а не на Core i5 и 200 кб кода как в случае с Zend Studio и php и многими другими вкусностями, про Team System уже не говорю (а, да, Team System стоит очень дорого :) так я думаю, что Zend Studio вы тоже не покупали, а да, вы же наверное NetBeans пользуетесь ну да ну да или вообще PDT??? ). Да, к сведению, есть бесплатный C# Express.

    2) А, да, я забыл про плагины, о да!!!! поставьте себе Resharper и я буду смеяться над тем, кто скажет что программировать в какой-то другой IDE удобнее.

    Так о чем это я? Я об инструментах, я лично не собираюсь писать в блокноте каждый раз когда Zend Studio в очередной раз зависнет, что случается не так уж и редко.

    3) :) быстродействие….какие там байткоды и размышления php программистов о том, о чем они обычно и понятия не имеют (я имею ввиду тех кто пишет только на php). Если не понимаете какой язык компилирует, а какой только лишь облегчает работу интерпретатору, то не лезте в подобные обсуждения, т.к. изобретение eAccelerator-ов уже давным давно было у явы например, которая не в пример намного мощнее и по инструментарию и по качеству самого языка.

    4) Поиск ошибок, тобишь отладка, профайлинг и т.д. и т.п. php-шникам советую посмотреть какие возможности тут предоставляет Visual Studio, да и чего тут говорить, сам язык C# например (я про предотвращение этих самых ошибок).

    Вообщем лирическое отступление…зачем хвалить php, даже не попытавшись посмотреть, а что там у других.
    Или сложно поставить себе Visual Studio и попытаться разобраться хоть мало-мальски что там и как?

    P.S.: Большее количество времени сейчас пишу на php (лет 6 наверное уже), жутко бешусь и знаете почему? А потому, что заказчики у нас такие php им современная “удобная технология”, которая экономит время и деньги :-D только чье время и чьи деньги в итоге никому не известно

    • Vuvu

      Coderm уже по тому что ты пишеш видно что ты не работал серезно ни с php, ни с *nix системами. Ибо я не видел еще человека который работал с этими технологиями, работал как професионал, более или менее, а не был на стадии поиска подходящей для себя платформы. “даже не попытавшись посмотреть, а что там у других” а чем ты говориш ????????? Сколько программистов на open source более чем знакомы с Windows и Visual Studio и сколько которым работать кликая правую кнопку мыши кажется единтвенным возможным и понятным вариантом, даже не посмотрев а если посмотрел то вздрогнул и вернулся в привычный интерфасе, где царит правый клик мышю. А чем ты пишеш вообше??????? Тебе остоеца с насмешкой обратится к *nix администратором, мол какие не крутые, не могут освоить правый клик мышю, перешли на nix. А вось пройдет.

    • Vuvu

      Coderm уже по тому что ты пишеш видно что ты не работал серезно ни с php, ни с *nix системами. Ибо я не видел еще человека который работал с этими технологиями, работал как професионал, более или менее, а не был на стадии поиска подходящей для себя платформы. “даже не попытавшись посмотреть, а что там у других” а чем ты говориш ????????? Сколько программистов на open source более чем знакомы с Windows и Visual Studio и сколько которым работать кликая правую кнопку мыши кажется единтвенным возможным и понятным вариантом, даже не посмотрев а если посмотрел то вздрогнул и вернулся в привычный интерфасе, где царит правый клик мышю. А чем ты пишеш вообше??????? Тебе остоеца с насмешкой обратится к *nix администратором, мол какие не крутые, не могут освоить правый клик мышю, перешли на nix. А вось пройдет.

  • Tatalubuisa

    Согласен с Coderm, сам лично уже 18 лет использую технологии Microsoft, имел дело с PHP, все сказанное выше верно, и важные моменты отмечены, от себя добавлю технологии развиваются, но PHP в сути остается все той-же Personal HomePage Tools имхо…

    И не стоит забывать о таком важном моменте как финансирование, ведь как известно когда в кармане шуршит работается веселее, посмотрите на переменные в PHP, вида $myvar, $- о чем говорит??? что дайте, не хватает денег… А ASP.NET финансируется стабильно, работает целая команда, все хорошо оплачивается, и отлажено, и не разрабатывается на неких творческих началах…

    Далее где-то упоминалось о кросс платформенности, так есть MONO уже этот вопрос решим… Есть даже возможность связки PHP.NET, правда не вижу в нем смысла, но все же… PHP, как и ASP(просто ASP) это уже пережитки некоего старого стиля, о котором стоит забыть… Тем более сейчас уже, цены не такие кусачие на хостинги и даже на сервера, если проект серьезный, а не какой-нибудь копеешный, то эти вопросы легко решими. И вообще бесмыслено сравнивать ASP.NET и PHP, это как два разных мира, два разных века т.е отрезка времени. два разных этапа развития технологии. Один это будущее(ASP.NET), другой практика прошлого(PHP).

    • Vuvu

      Tatalubuisa ты видимо отстал от жизни раз такое пишеш. PHP начал развиватся когда еще не было ASP.NET и сейчас процветает, как и open source другие технологии и плотформы. А каком прошлом ты говориш??? A ASP.NET был и останеца конвертором который помещается минимум на DVD дисках. Так было так и останеца.

      • Вам рассказали про конкретные преимущества ASP.NET, а вы какой-то бред пишете про DVD диски. Считаете, что PHP лучше? Напишите конкретно по пунктам. А голословные утверждения никому не нужны.

        • Vuvu

          Вы пишите под ником “DeveloperGuru.NET” и даже не догадываетесь что ASP.NET является конвертором???
          Грустно!!! Вам еще много надо читать чтоб понять элементарные основы WEB архитектуры.
          Только не зацикливаетесь на Microsoft литературе, расширяйте свой кругозор.
          WEB изначально создавался и развивался на *nix системах, так хоть будьте добры,
          поинтересуйтесь той темой о чем хотите порассуждать или поспорить.

          • Вот уж не знал, что “ASP.NET является конвертором”. Наверное, им можно картинки в разные форматы конвертировать? :-)

            И с чего вы взяли, что я на чем-то зацикливаюсь? Это вы зациклились на php и упорно тут доказываете, что все остальное – полная фигня, причем без каких-либо доводов.

          • Vuvu

            Я не говорил что ASP.NET фигня. Доводы я бы с удоволсьтвием )) ток они настолько понятны для понимающего по теме что даж писать не интересно. Я же не могу заниматся вашим образованием!
            У вас есть опыт работы на open source для WEB? Проекты делали ?
            У меня есть не малый опыт работы как Ms Studio так и с Open Source, и не тока в WEB-е, и не тока в программировании но и в администрировании.

          • Alexander Fedotov

            Господи, что за дебил

  • Vuglu

    Очень хорошая тема религиозного толка. Наверное из разряда какой унитаз удобней, круглый или квадратный. Коробка ПП ручная или автомат. Христианство или буддизм. Уверен, что все пишущие не вчера начали кодить и у всех есть свои доводывкусы. Но тем не менее, о чем говорит нам мировой опыт использования LAMP (linux apache mysql php)? Он говорит нам о Wikipedia, Facebook, WordPress, flickr, Drupal, Vkontakte, phpBB, многих проектах Google, тысячах популярных стабильных сайтов. О чем нам говорит опыт .NET? О корпорациях с тысячами сотрудников, которые ежедневно ваяют свои enterprise порталы и пытаются заставить их работать, у кого-то наверное получается, я не видел. Поправьте меня, если я не прав. Интересуют успешные масштабные сетевые проекты на .NET. http://www.microsoft.com и http://www.bing.com не предлагать.

    • Да, на PHP сделано намного больше сайтов, чем на ASP.NET, но речь ведь идет об удобстве, а не популярности. На ВАЗах и Ланосах ездит больше людей, чем на Мерседесах и Майбахах, но это не значит, что последние хуже.
      Я не спорю, что у Винды есть большой недостаток – она платная. Этот недостаток возрастает, если надо масштабировать проект – запустить его на сотнях компьютеров. Но если речь идет об одном сайте с посещаемостью в несколько тысяч человек в день, то для этого будет достаточно всего одного сервера, а стоимость лицензии ОС будет намного ниже стоимости разработки.

      • Vuvu

        “Вот уж не знал, что “ASP.NET является конвертором” ” )))
        А чем он по вашему является ?? Средой разработки которая в свою очередь является конвертором ??
        Если вы до сих пор не знали этого то пора уже узнать)) или понять, не обижайтесь но по тому что вы до сих пор этого не знали понятно ваше “компетентность” в понимании WEB-а. Естественно будете хвалить ASP.NET так как на PHP ничего серезного сделать не в состоянии. Трудно без конвертора ? )

      • Vuvu

        Ладно)) Чтоб не быть голословным попробую обяснить. WEB – клиент/серверная технология. Кто у нас клиент?? Восновном, наверное 97% клиент это браузер в котором я сейчас пишу, остальные 3% могут быть самые разные программы посылаюшие запрос на сервер и получаюшие ответ в виде xml, json, и любой другой сериализации или обычного текста. Что такое броузер?? Браузер или броузеры это программы которые запрашивают адреса с серверов и стараются максимально корректно отобразить их вывод для пользователей интернета. Какого формата ответ предусматривает получить броузер от сервера и какой он в состоянии понять и отобразить?? Ответ – plainText, картинки, HTML/XHTML, XML, для более динамичных случаев JavaScript(AJAX), Internet Explorer также VBScript. Какой каркас получился у нас с клиентской стороны?? Броузеры – понимающие и ожидающие от сервера HTML/CSS/JavaScript. Кто у нас на серверной стороне?? Уже понятно, кто бы там не был на сервере его задача в основном сводится к генерации HTML/CSS/JavaScript, будь то динамически из базы данных на динамический запрос клента или статически одну и ту же страницу, задача сервера для клиента сводится к одному – ответить HTML/CSS/JavaScript-ом. Что такое PHP?? PHP серверный язык программирования роль каторого сводится к генерации любого вывода каторый мы скажем, как мы уже поняли нам нужен HTML/CSS/JavaScript. Тока вот PHP не знает HTML/CSS/JavaScript. Нам придется выучить их чтобы предложить их PHP, да и динамическую наработку PHP->Вывод->Клиент->PHP тоже. Что такое ASP.NET?? ASP.NET среда разработки предлагающая нам не вникать и не учить то чем и является WEB на половину – то есть HTML/CSS/JavaScript а учить его в основном “медведь в посудной лавке” надстройку для генерации того самого HTML/CSS/JavaScript.
        Ну хватит)) Лекция закончилась. Тока прошу в ответ не пишите что в ASP.NET можно тож писать все ручками)))) Надеюсь вы в курсе что Apache/PHP/MySQL/postgreSQL/SQLite и даже Oracle) кросс плотформенны?!!!)). Или вы видете удобства в незнании технологий и в предпочтении посредничеству ASP.NET интерфейса ?
        Имеющий глаза да увидет)) Имеюший уши да услышет)

    • Redshifer

      Facebook вроде переписали движок на c++

    • MySpace Это проект на асп нете!

  • Alex

    И в php и в ASP.NET есть свои плюсы и минусы
    Каждый прав по-своему
    Но от себя могу сказать 6 лет программировал на php, но когда начал работать с ASP.NET знать php больше не хочу

  • eVo

    Итак я пишу ваще на Ruby, чтоб некоторые не воняли но больно обидно за норм языки
    Vuvu мне вас жалко..даж пена из рта пред походу…все крупные проекты как вы говорите написаные на пхп уже давно не пхп а собственая реализация каждой фирмы по сути нового языка типо пхп. Чтоб добится такого производительности чуваки жопу рвали на своих разработках, я думаю если вам скажут как сложно это поддерживать вы по другому будете говорить..на том пхп которым вы пользуетесь вы никогда не сделаете такого. Большество проектов на пхп крупных в силу того того что они развивались по принципу на чем проще и не думали что они выгорят ..ну а потом просто переписывать лень после стоких вложений. Vuvu сколько вы как вы ошибки ищете? и солько это времени занимает? я думаю дольше чем те люди которые пишут на норм языках. Получается вам платят больше и за пустую работу потому что типо вы больше работаете(время затраченое на исправление), время впустую? хотя результат один и тот же. Вы говорите что асп конвектор ..бред полный вы че увидели как школьник пишет на нем и сказали “ахаха вот эт парень жгет 2 раза мышкой кликнул и сайт готов”? это бред если не знать веб стандарта на чем бы ты не писал будет говно и списывать на каркас не стоит это. Кстати Vuvu потоки на серваке или Comet для вас наверное ваще нонсен?
    Vuvu назовите то что нельзя сделать на нем? или другой плаформе(намек на руби))))? я вот могу назвать то чего нельзя сделать на пхп легко.
    P.S. Vuvu задумайтесь почему пхп распрастранен(простота – да бред другие не сложнее + куча быдлопрогеров, дешевость – да собствено руби не дороже, как и асп, shared хостинг 200р , быстрота – да миф) а уж потом пишите и как то более убедительнее а не общие фразы с потолка. почитайта книжки про руби к примеру чтоб не тыкать вас в асп нет..А кстати читали МАкконнелли “Совершеный код” ? так вот на пхп такого не получится сделать, я про название.

    • Vuvu

      А чего меня жалеть!! Ты лучше себя пожалей. И не употребляй грубых слов, типо “воняли”. Сам пенишся еще другим ярлики вешаеш. И лучше бы ты не писал “пхп”, ты же пишеш “Ruby” так почему же не писать “php”. Показываеш свое презрение ? Я к ASP пренебрежительно не относился. А что ASP.NET конвертирует написанное в стиле VS studio в HTML/JavaScript это не моя точка зрения, это реальность.

      “Большество проектов на пхп крупных в силу того того что они развивались по принципу на чем проще и не думали что они выгорят” Ну да, только ты такой умный, никто ни додумался, только ты. И как тебя упустили из виду такого умника!.

      “Vuvu сколько вы как вы ошибки ищете? и солько это времени занимает?” Поверь на это уходить совсем не много времени, уж точно меньше чем на ASP.NET. Ты пробовал писать на php и почуствовал как это не легко делать на нем крупные грамотные проекты, и как не легко их сопровождать? А у тебя никогда не было озарения, что ты еще не дорос до того уровня, чтоб на php писать соотвецтвенный код, в котором можно и ошибки легко находить и сопроваждать без проблем.

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

      • eVo

        Не тыкай. Я разве писал тыканьем? Это лишний раз показывает уровень общения.

        “Ты лучше за своей речью проследи чтоб она была более внятная, не горечись и спокойно напиши свою точку зрения.” – Речь? а где я позволил высказаться лишнего или не понятно? Напротив, я думаю мой собеседник позволяет себе лишнего.

        “не горечись и спокойно напиши ” – разве я горячился до этого? или вы пытаетесь вывести меня своими словами?

        Чел вы не адекватный и идет агрессия, ощущение что школьник пишет. В каком месте “Сам пенишся еще другим ярлики вешаеш” а? и что за ярлыки то?. Я не говорил не писать на пхп я говорил что удобнее и на чем быстрее писать допустив меньше ошибок и имелось ввиду строго типизированные языки … я не дорос? смешной тип – я писал на с++ и boost коммерческий софт. Наверное люди пишущие софт на нем глупые да?

        “Показываеш свое презрение ? Я к ASP пренебрежительно не относился” – я не презирал ничего, я лиш прочел все что вы писали и показал что ваши слова голословны.

        “И лучше бы ты не писал “пхп”, ты же пишеш “Ruby” так почему же не писать “php”” – снова не адекватность, голословное цепление к словам

        “А что ASP.NET конвертирует написанное в стиле VS studio в HTML/JavaScript это не моя точка зрения, это реальность.” – и что же он конвертирует? файл разметки живет отдельно от файла кода. Ничего лишнего не появиться в разметке. Поделитесь опытом что он конвертирует то.

        “Ну да, только ты такой умный, никто ни додумался, только ты. И как тебя упустили из виду такого умника!. ” -лишний раз доказывает вашу не адекватность

        P.S.
        Вот теперь ВЫ пишите не горячась и обосновывайте свои слова целиком.
        ощущение,что человек что то вроде быдла из какого то деревни. Мои слова не голословны. Посмотрев ваш текст видно что нет никакого уважения к собеседнику.

        • Vuvu

          )))))))))))) Сам ты быдло. Ты лучше бы не писал на “ВЫ” а просто вырожался по сдержаннее. Твое “Выкание” не соотвецтвует твоим выражениям.

          Ты решил за всех что удобнее строгая типизация для написания web приложений? php не позволяет проверить тип переменного ? Это же так необходимо!

          Кокое голословие!!! Оглянись вокруг. Большая часть веба работает на *nix/php/mysql.
          Все недодумались!! У всех проекты выгорят)). Столько всего и все они не на правильном пути. Всем было лень думать. Куда им до тебя.

          “Ничего лишнего не появиться в разметке. Поделитесь опытом что он конвертирует то.” Ты вообше в теме
          ??? HTML/JavaScript учил ?? Тебе еще обяснять надо что и где появляется.

          Я может иногда и выражаюсь резко, но собеседника обидеть не желаю и в его адрес грубыми словами не бросаюсь.

          • Друзья! Не надо ругаться. Подумайте! Это всего лишь технологии, а вы портите друг другу настроение. Разве это того стоит?
            У каждой технологии свои преимущества и недостатки. Люди и проекты, тоже, разные, поэтому недостатки одной технологии несущественны для одних и имеют значение для других.

          • Vuvu

            Согласен. С тобой спорить было интересно)) С уважением.

          • eVo

            убери пожалуйста это все если есть функции модерации.

          • eVo

            “Сам ты быдло.” – пустослов. Разве я не пояснил почему я написал что то быдло?
            “вырожался по сдержаннее.” – а собственно в чем я варазился не сдержано? или снова пустослов?
            “Твое “Выкание” не соотвецтвует твоим выражениям. ” – пустослов снова
            “Ты решил за всех что удобнее строгая типизация для написания web приложений? php не позволяет проверить тип переменного ? Это же так необходимо!” – 1) не я решил 2) ты по моему не понял всей мысли упертый быдлокодер
            “Большая часть веба работает на *nix/php/mysql.
            Все недодумались!! У всех проекты выгорят) …Куда им до тебя” – большая часть веба эт мелкие сайтики на которых живет мелкие быдлоконторки в 95% это пхп-ориентированные.
            “Тебе еще объяснять надо что и где появляется.” – пустослов и нет доводов..Объяснил если такой гуру.
            Я написал лиш доводы о том что ты полевал асп нет левой инфой, а ты реагируешь как школата

            Вывод: ни о чем твой детский лепет. Как ты выразился я не дорос…может все таки наоборот? Почитай книжку которую я написал в первом посте..может сможем на ровне поговорить ибо твой кругозор дальше пхп не видит ничего. В свою очередь могу сказать что я писал на с++, c#, ruby, erlange. Я постоянно изучаю что то новое чтоб понять что и когда можно использовать а не просто зацикливаться на одном.

          • Vuvu

            Ты смахиваеш на хранического обижника. Вытри слюни.

          • eVo

            я обижался? да ты по моему мечтаешь. Я писал адекватно и вроде как доводы приводил, а ты гонишь на людей и придумываешь сказки не основываясь ни на чем…читай книжки и может быть ты станешь кем то в жизни. Школьник еще не поздно поумнеть

          • Vuvu

            Я готов с табой подискутировать. Только ты пойми, не надо в мой адрес грубыми словами бросатся. Не будем же мы тут корчить из себя крутых парней. Я в жизни стал тем кто есть и представь что я состоялся.
            Я не школьник дядя, хватит тебя выресовыватся. Пиши так чтоб было резонно отвечать, не груби. Мы не в уборной.

          • eVo

            Ты по моему не понимаешь что сам начал хамство? Я пишу по делу и не вижу что бы ты отписывал по нормально не нахамив мне. Или ты считаешь себя невинной овечкой на которую я накинулся так подло?

          • Vuvu

            Как же я сам начал если ты первым мне написал ??

          • eVo

            я в своем первом сообщение хамил? текст в студию

          • Vuvu

            А ты прочти свое первое сообшение. Я пытаюсь вести себя конструктивно, было бы хорошо еслиб ты тоже попробовал в том же духе. Для тебя нормальны выражения “быдлокодер” “воняли” ?

          • eVo

            ты конструктивно? смотрим в книгу видим фигу? или свои слова милее некуда а чужие как нож в спину? Где в моем первом предложение что то хамское в твой адрес????? ты что фантазию включаешь..все остальное было высказано после быдлослов в мой адрес

          • Vuvu

            Я вижу ты просто придурок. Зря я на тебя время трачу

          • eVo

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

          • Vuvu

            О да крутой гавнюк. Как же ты крут. Видать сосеш у самого Дона Альвареса.

  • Ddd

    ???

    • xxx

      ….

  • WrittingONphp

    Смешные типы!
    еVo – мужик который чет доказывает. Видать в детстве был лысым парнем!! ФУ!
    Vuvu – мужик без довадов а лиш балаболство, смахивает на ботана-дурачка..тип все ж очевидно!
    Клевая Санта Барбара!!!!! пасиб посмеялся. Автор топика очищай этот отстой

  • WrittingONphp

    Смешные типы!
    еVo – мужик который чет доказывает. Видать в детстве был лысым парнем!! ФУ!
    Vuvu – мужик без довадов а лиш балаболство, смахивает на ботана-дурачка..тип все ж очевидно!
    Клевая Санта Барбара!!!!! пасиб посмеялся. Автор топика очищай этот отстой

  • Andrey

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

    • Во-первых, я бы не сказал, что преимущества неоспоримые – и там и там есть свои преимущества и недостатки. Лично для меня преимущества ASP.NET перевешивают недостатки.
      Теперь, что касается этого сайта: он работает не на PHP, а на Вордпрессе. Да, вордпресс написан на PHP, но мне это не важно. Мне важно, что Вордпресс – это очень удобный движок для блогов с большим количеством различных плагинов. Т.е. у меня нет необходимости как-то его дорабатывать.

  • Алексей Чернелевский

    Владею PHP…..Потихоньку перехожу на .NET , но только для повышения квалификации т.к. PHP остаётся для меня единственным верным вариантом….
    P.S. если WP это сложная система, то я мастер кода т.к. за неделю отштампую CMS конкурентноспособную относительно WordPress)

    • > Потихоньку перехожу на .NET , но только для повышения квалификации т.к. PHP остаётся для меня единственным верным вариантом….

      Понятно, что на PHP заказов больше, но вам-то самому что больше нравится? С точки зрения программирования.

      > за неделю отштампую CMS конкурентноспособную относительно WordPress

      Это только так кажется. Да, за неделю без проблем можно написать движок блога, который будет работать быстрее и потреблять меньше памяти, но он не будет таким настраиваемым и гибким как WordPress. Как говорится, дьявол кроется в деталях.

    • > Потихоньку перехожу на .NET , но только для повышения квалификации т.к. PHP остаётся для меня единственным верным вариантом….

      Понятно, что на PHP заказов больше, но вам-то самому что больше нравится? С точки зрения программирования.

      > за неделю отштампую CMS конкурентноспособную относительно WordPress

      Это только так кажется. Да, за неделю без проблем можно написать движок блога, который будет работать быстрее и потреблять меньше памяти, но он не будет таким настраиваемым и гибким как WordPress. Как говорится, дьявол кроется в деталях.

    • > Потихоньку перехожу на .NET , но только для повышения квалификации т.к. PHP остаётся для меня единственным верным вариантом….

      Понятно, что на PHP заказов больше, но вам-то самому что больше нравится? С точки зрения программирования.

      > за неделю отштампую CMS конкурентноспособную относительно WordPress

      Это только так кажется. Да, за неделю без проблем можно написать движок блога, который будет работать быстрее и потреблять меньше памяти, но он не будет таким настраиваемым и гибким как WordPress. Как говорится, дьявол кроется в деталях.

    • > Потихоньку перехожу на .NET , но только для повышения квалификации т.к. PHP остаётся для меня единственным верным вариантом….

      Понятно, что на PHP заказов больше, но вам-то самому что больше нравится? С точки зрения программирования.

      > за неделю отштампую CMS конкурентноспособную относительно WordPress

      Это только так кажется. Да, за неделю без проблем можно написать движок блога, который будет работать быстрее и потреблять меньше памяти, но он не будет таким настраиваемым и гибким как WordPress. Как говорится, дьявол кроется в деталях.

    • > Потихоньку перехожу на .NET , но только для повышения квалификации т.к. PHP остаётся для меня единственным верным вариантом….

      Понятно, что на PHP заказов больше, но вам-то самому что больше нравится? С точки зрения программирования.

      > за неделю отштампую CMS конкурентноспособную относительно WordPress

      Это только так кажется. Да, за неделю без проблем можно написать движок блога, который будет работать быстрее и потреблять меньше памяти, но он не будет таким настраиваемым и гибким как WordPress. Как говорится, дьявол кроется в деталях.

  • Александр

    для сравнения я написал небольшой код для проверки времени выполнения: для php он выглядит так

    $time_start = microtime(1);
    for ($i=0; $i<10000000; $++){}
    $time_end = microtime(1);
    $time = $time_end – $time_start;
    echo $time;
    Время показало 1,4 секунды.

    В asp.net код выглядел так:

    Stopwatch sWatch = new Stopwatch();
    sWatch.Start();
    for (int i = 0; i < 10000000; i++){ }
    sWatch.Stop();
    Label1.Text =Watch.Elapsed.TotalSeconds.ToString();
    Время выполнения показало 0,05 секунд.
    Хотелось бы услушать мнение.

    • Vuvu

      PHP медленно работает с большими циклами. Если вам нужны миллионные циклы то определенно PHP не подходит. Причем проблемы начинаются именно с больших циклов и улетучиваются если использовать не миллионные а хотя бы сотни тысячные циклы.  

    • Andrey

      Протестировал ваш php код. 
      Железо: AMD Athlon(tm) II X2 245, 6 Гб ОЗУ
      Результаты:
      win7, Denwer, PHP 5.2.7 – среднее значение 0,95 с
      Linux Debian 6.0.1 PHP 5.3.3-7 – среднее значение 0,56 с
      Пробовал усложнить тест.
      $time_start = microtime(1); for ($i=0, $n = 0; $i<10000000; $i++){ $n++; } $time_end = microtime(1); $time = $time_end – $time_start; echo $time;
      Время выполнения в линуксе, увеличилось до 0.87 с. К сожаления нет возможности по тестить на ASP. Интересно, как бы изменились результаты ASP.NET, если вместо холостого цикла, делать какие то действия? Если не сложно, протестируйте пожалуйста.

  • Ljasljlda

    DeveloperGuru.NET, а у вас есть свои проекты на ASP.NET?
    И как ощущения? Разрабатывали с нуля или на основе какой-то CMS?  (Если не секрет какой?)

    • Разрабатывал и с нуля и с помощью CMS. Длительное время этот блог жил на dotnetblogengine.net

      • Ljasljlda

        Ясно, спасибо. А можно пару примеров, чего не хватило в BlogEngine.NET, и что есть в WordPress (если я правильно понял, блог сейчас на нем)?

        • BlogEngine – довольно простой движок, в нем нет очень многих
          возможностей Вордпресса (с учетом огромного количества плагинов у
          последнего). В свое время мне было интересно в нем покопаться, некоторые
          вещи переписать под себя (api для расширения там было очень не
          развито), но вместе с этим я себе отрезал возможности установки новых
          версий (тогда я бы потерял свои изменения).

          Со временем желание что-то дописывать под себя пропало (на это же надо
          много времени), а с учетом того, что в Вордпрессе все уже есть, то поэтому и перешел.

          Разрабатывать я люблю на ASP.NET (сейчас уже на ASP.NET MVC), но если есть готовая CMS, которая удовлетворяет мои потребности, то зачем тратить время на создание нового велосипеда? Впрочем, если кто-то готов платить за это, то почему нет? :-)

          А в чем у вас проблема? Выбираете технологию для проекта или решате для себя в каком направлении двигаться?

          • Ljasljlda

            И то, и то в принципе.

            На текущем месте оффлайновой работы скорее пригодится ASP.NET.
            И проектик маленький хотелось бы сделать – ничего особенного (статьи, форум, галерея). С нуля писать желания нет, а вот попытаться разработать пару модулей, я не против.
            Я бы с удовольствием глубже изучил бы обе технологии, и PHP (делал бы сайт на Drupal) и ASP.NET, а то сейчас только базовые знания по обеим.
            Просто мне еще не совсем понятно, как там с возможностью фриланса (хотя это для меня сейчас и не актуально, но все-таки не хотелось бы себя ограничивать) и удаленной работы на ASP.NET – с PHP то все ясно, возможностей довольно много.
            Т.е. есть три направления: оффлайн работа(ASP.NET), фриланс(вроде как PHP) и свой проект(???). Ни одна из технологий большинство пока не набрала. Вот думаю….

            P.S. Извиняюсь за свой ник, случайно получилось.
            P.P.S. Нашел довольно интересную и обнадеживающую статью 
            http://www.planettelex.net/blog/orchard-cms-vs.-wordpress
            Надо поковыряться в Orchard CMS…

          •  Для фриланса возможностей, конечно, больше на PHP, т.к. ASP.NET используется в основном для крупных проектов с большой командой.
            Свой проект лучше делать на том, что лучше знаешь (или что больше нравится).
            Orchard CMS довольно неплохой движок, но только надо понимать, что у него не будет такого большого комьюнити, как у вордпресса или друпала. Соответственно, не будет много плагинов, т.е. многие вещи придется делать самому.

  • Oleg_trinity

    помогите найти хорошего ASP.NET архит. разработчика -тимлида  Работа в Киеве oleg_trinity@hotmail.com  С уважением Олег

    •  Ориентировочная зарплата, возможно, заинтересовала бы потенциального разработчика.

      • Oleg_trinity

         $2 тыс + , все зависит от уровня

        • Для Киева это не очень заманчивая зарплата. Все мои знакомые получают больше, причем некоторые работают просто сеньорами, без заморочек тимлидерства.

          • Oleg_trinity

             я готов платить столько сколько человек готов отработать. 2+ это и 3 и больше если адекватный и проф.

  • zoh

    Всё это вымрет! Node.JS – сила!

    • QSing

      Атомная боеголовка это сила, а это все говно..))))