Электростальский форум

Hi-Tech => Компьютеры, периферия, мультимедиа и ПО => Тема начата: Оrange от 08.08.08, 10:17:29

Название: ASP.NET vs PHP
Отправлено: Оrange от 08.08.08, 10:17:29
Навеяно http://forum.elsite.ru/index.php?topic=176465.0

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

1. PHP позволяет контролировать HTML код целиком и полностью.
2. Небольшие скрипты работают на PHP быстрее, тогда как на ASP.NET вся мощь Framework все-таки не нужна и "висит мертвым грузом".
3. ASP.NET позволяет создавать приложения быстрее. Да и функции Framework помогают там, где в PHP их просто нет и необходимо создавать их самому. Использование самописных функций в PHP и функций Framework дает закономерное преимущество ASP.NET, причем иногда на 500-600% (закономерно, ведь интерпретатору PHP всякий раз приходилось эти функции анализировать и выполнять заново).
4. PHP полностью открыт и бесплатен.
5. Использование объектной модели в проекте на PHP снижает его производительность в среднем на 30%.
6. Синтаксис PHP более прост.

Все ИМХО. Пока что-то в голову ничего больше не приходит.
Название: Re: ASP.NET vs PHP
Отправлено: bear от 08.08.08, 10:29:15
как мне тут подсказал Rockerzz
python + Django - вот решение всех проблемм :)

с башорга: на phpconf у Marcus`a спросили как они используют php в google. Он ответил, что у них есть страничка, через которую они пиццу заказывают, так вот она написана на php
Название: Re: ASP.NET vs PHP
Отправлено: qwerty99 от 08.08.08, 10:37:37
ASP гумно! пришлось как то доделывать портальчик на ASP - обматерился! PHP рулит! тем более что PHP идет под любую ось, а ASP только под виндами + IIS

 ~~~:/
Название: Re: ASP.NET vs PHP
Отправлено: bear от 08.08.08, 10:40:14
а ASP только под виндами + IIS

 ~~~:/

неправда ваша :)
http://www.apache-asp.org/
Название: Re: ASP.NET vs PHP
Отправлено: qwerty99 от 08.08.08, 10:42:11
а ASP только под виндами + IIS

 ~~~:/

неправда ваша :)
http://www.apache-asp.org/

Это извращение!  -wall-
Название: Re: ASP.NET vs PHP
Отправлено: rockerzz от 08.08.08, 10:42:15
New holywar detected. Epic drama on?  [[rolleyes2]]

Ссылки на тесты в студию:

Цитировать
5. Использование объектной модели в проекте на PHP снижает его производительность в среднем на 30%.

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

Есть куча готовый каркасов для разработки веба - причем открытых и бесплатных. Тот же джанго для питона, j2ee, раби-н-рейлс.

Вывод: АСП не нужен.




Название: Re: ASP.NET vs PHP
Отправлено: rockerzz от 08.08.08, 10:44:58
Подумал. ПХП в общем тоже. =]
Название: Re: ASP.NET vs PHP
Отправлено: Оrange от 08.08.08, 10:48:15
>>5. Использование объектной модели в проекте на PHP снижает его производительность в среднем на 30%.

Object-Oriented PHP: Concepts, Techniques, and Code by Peter Lavin
Собственные эксперименты.
Название: Re: ASP.NET vs PHP
Отправлено: LEO от 08.08.08, 13:16:39
тут некоторые путают ASP и ASP.NET - это как бы немного разные вещи. ASP - попытка мелкософта сделать аналог PHP - никому ненужный пережиток времени, серверный и клиентский код с разметкой в одной куче, и вообще давайте не будет его рассматривать. Схожесть с ASP.NET только в названии.

в дальнейшем давайте подразумевать под АСП именно .NET 2.0 и выше

по пунктам первого поста.
1. тут хочешь контроллируй, не хочешь - за тебя все сделают. Банально писАть в выходной поток из кода можно всегда. В этом отношении все что есть в пхп тоже доступно. не проще и не сложнее. одинаково.

2. от того, что в памяти на сервере висят библиотеки фреймворка ровным счетом ничего не меняется. Залил проект, при первом обращении страничка скомпилилась - дальше все летает.
Спорить, что быстрее - компилятор или интерпретатор, думаю нет необходимости.

3. Да ладно сам фреймворк. ты можешь подцепить любую исполняемую библиотеку к проекту. Так как как и в вин-приложениях. абсолютно так же.

4. это да)) не поспоришь.

5. ну тут нечего сравнивать. доступные в ASP.NET языки сами по себе ООП (VB.NET и C#)

6. Вот это самое интересное. Дело в том, что тут ты пишешь на самом обычном привычном тебе языке. Не в какой-то "версии под Web", а именно на этом самом же языке. Я уже где-то писал, отличаются только контролы, под Web одни, под венду другие. А внутри все то же самое.
Помните, я полгода назад выкладывал прогу, которая заливала файлы в "файлы" форума.  Чего мне стоило перенести ее под Web ? Да ничего, скопипастил код и все.

Но это когда от  Web-сервера нужны не совсем "привычные" для него действия (как в моем случае создание post-запроса к другому серверу и запись в него файла, который в это же время читается с другого Web-сервера) ... а если нужно рендерить странички просто, то тут серверного кода почти не нужно писать.

Накидал БД, накидал на страничку контролы, в свойствах связал с БД, настроил оформление, поведение (все это мышкой) - и готово.

у меня какие-то видео-уроки валяются, там они в конце делают небольшой Quiz-движок, типа создаешь тесты, в них вопросы, можно регить юзеров, проходить тесты и собирается статистика. У них на весь проект строк 10 кода.

Ну и еще удобная вещь, которую я юзаю в каждом проекте. Не надо писать ни строчки кода для юзеров, из регистрации, входа-выхода, смены\восстановления пароля по почте, их ролей (прав), и персональных настроек. в ASP.NET есть 3 компонента - memberships (юзеры), roles (роли), и profiles (можно создать любой набор настроек для юзеров). Чтобы это юзать, надо в конфиге для каждого из них указать базу. И все. Причем можно для каждого указать свою БД, а можно в одну БД запихать все эти данные с нескольких совершенно независимых проектов. Все работает.

И вот тут ASP.NET берет всю рутину на себя. все операции с БД, сессии, и прочее - для вас доступны в коде объекты (типа имя юзера, залогинен ли он или аноним, его профиль со всеми настройками - все в объектной модели). Для логина\пароля\восстановления и всего прочего есть контролы, которые можно превратить во что угодно. Словом, полная свобода.

Ну еще из фишек - заложенная в основу поддержка тем, скинов, многоязычности.

На что нацелен АСП? на типовые задачи, на массу (как обычно в стиле мелкософт) позволяя их решать быстро и просто.
Название: Re: ASP.NET vs PHP
Отправлено: ANtZ [[devil]] RгоDkA от 08.08.08, 16:15:51
что вы все на PHP и ASP зациклились... перл - вот это сила!
Название: Re: ASP.NET vs PHP
Отправлено: LEO от 08.08.08, 16:16:21
что вы все на PHP и ASP зациклились... перл - вот это сила!
это оффтоп  [[devilish]]
Название: Re: ASP.NET vs PHP
Отправлено: _Atheist_ от 14.08.08, 18:27:24
2. от того, что в памяти на сервере висят библиотеки фреймворка ровным счетом ничего не меняется. Залил проект, при первом обращении страничка скомпилилась - дальше все летает.
Спорить, что быстрее - компилятор или интерпретатор, думаю нет необходимости.
А зачем исходники на продакшн выкладывать? :)
Достаточно во время деплоймента скомпилисть aspnet_compiler'ом, и тогда сборки со страничками уже скомпилированные будут лежать в bin, и, соответственно, даже первое обращение к страничке не вызовет никакой компиляции, только загрузка сборок :)
Название: Re: ASP.NET vs PHP
Отправлено: LEO от 14.08.08, 19:50:37
2. от того, что в памяти на сервере висят библиотеки фреймворка ровным счетом ничего не меняется. Залил проект, при первом обращении страничка скомпилилась - дальше все летает.
Спорить, что быстрее - компилятор или интерпретатор, думаю нет необходимости.
А зачем исходники на продакшн выкладывать? :)
Достаточно во время деплоймента скомпилисть aspnet_compiler'ом, и тогда сборки со страничками уже скомпилированные будут лежать в bin, и, соответственно, даже первое обращение к страничке не вызовет никакой компиляции, только загрузка сборок :)
я знаю, Дино Эспозито рассказал, спасибо =)