Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Достоинства и недостатки PHP
Форумы портала PHP.SU » PHP » Программирование на PHP » Достоинства и недостатки PHP

Страниц (1): [1]
 

1. Haron - 10 Апреля, 2011 - 02:30:13 - перейти к сообщению
Заранее прошу прощения, если аналогичная тема на форуме есть.
Да, хотелось бы переименовать тему в "Плюсы и минусы php - в отношении разработки крупных проектов" но уже поздно Недовольство, огорчение

Друзья! Недавно мне заявили что "PHP === УГ", и абсолютно не приспособлен для создания больших высоконагруженых проектов (порталов, соц. сетей и пр). Я конечно привёл оппоненту примеры тех самых высоконагруженных крупных проектов, сделанных на php (Это всем известная википедия, вконтакте, фэйсбук (ну в фэйсбуке есть нюанс), и кучу менее известных, но не менее крупных и посещаемых). Аргументы оппонента - были следующими (В сравнении с python):

Цитата:
Люди, перешедшие с PHP на Python, сразу начинают кричать, что PHP не имеет шансов против Python'a и что они ни за что не вернутся обратно. Конечно, можно не обращать внимания, но эти крики основаны на фактах: выучив Python, ты начинаешь получать от него удовольствие. Однако необходимо уточнить: мало его просто выучить, нужно разобраться с использованием платформ для создания web-приложений. В связи с этим программеры часто задают себе вопрос: «А зачем мне тратить свое время (время - деньги) на изучение Python'а, если за неделю с нуля можно начать писать на PHP?». Ответ прост: потому что разработка приложений на Python'e идет быстрее на 30%, а его уязвимости составляют всего 0.67% от общего числа, против 36% у PHP (Python неуязвим ).


На это - я ответил:

Цитата:
Вопрос скорости разработки, также как и вопрос скорости работы сайтов - это вопрос знания матчасти программистами. И там и там есть быдлокодеры, и престиж php подрывают именно они. Именно простота и лёгкость php привлекла тучу народу, пишущих говно в итоге. Эти самые быдлокодеры в итоге - засерают форумы вопросами типа
"А пачиму мая страница тармазит\тупит\ашипка какаято вылазит???777" Отсюда и такие срачи питон(руби, перл и т д.) против php


Погуглив, я так и не нашёл достаточных свидетельств того, что "php это плохо", кроме малоинформативных тестов, пространных рассуждений (абсолютно не подтверждённых фактами), тупой копипасты на других пациентов, и (в 95% случаев) - нытьём по поводу недостатков php древних версий (до 4-ой).

Да, я согласен, у php - есть недостатки, например отсутствие нативной поддержки юникода (а mb_ - не более чем костыль), но в php-4 также ныли про отсутствие поддержки сессий к примеру.
Так что я считаю - что php, на данный момент - РАЗВИВАЮЩИЙСЯ ЯЗЫК, с большим будущим.

А что можете сказать - вы по этому поводу? В частности интересуют, объективные плюсы и минусы (ещё раз повторюсь - именно ОБЪЕКТИВНЫЕ И ПОДТВЕРЖДЁННЫЕ РЕАЛЬНЫМИ ФАКТАМИ) выбора PHP, как языка для разработки крупных веб-приложений.
2. grefon - 10 Апреля, 2011 - 02:55:55 - перейти к сообщению
Недельку назад у меня был подобный разговор - PHP vs ASPX. К счастью, мы вовремя опомнились и прекратили спор. Все эти рассуждения носят название "холодной войны" - если человек приверженец той или иной платформы и привык к ней, то сколько бы ему аргументов не говорили, мнение его вряд ли изменится.

Как по мне, так лучше не тратить время на споры, а определится, что важно для себя на данный момент (изучить новое или закрепить старое) и двигаться в этом направлении.
3. Haron - 10 Апреля, 2011 - 03:05:50 - перейти к сообщению
Дело в том, что скоро на меня повесят масштабный проект, и я хочу определиться с используемой для него технологией. Лично я склоняюсь всё-таки к PHP. Но хотелось бы услышать мнения специалистов, в отношении пригодности PHP к тем или иным ресурсоёмким задачам.
4. grefon - 10 Апреля, 2011 - 03:24:27 - перейти к сообщению
Мне очень трудно представить себе такой проект, который нельзя было бы реализовать на php или python, или aspx. Вы сами привели в пример проекты-гиганты, у которых посещаемость измеряется миллионами, и которые написаны на php. Так какой же ответ Вам тогда нужно?

Говорят, что на php чем больше код тем больше дебаг и тем больше снижается время разработки - это пожалуй один из самых весомых аргументов против php. Но тут можно возразить что это не недостаток языка, а недостаток программиста, который коряво продумывает логику будущего скрипта. А если кто-то на 30% быстрее пишет на питоне, то это совершенно не значит, что и Вы тоже будете писать быстрее, возможно будет совершенно наоборот! Про уязвимости на питоне ничего сказать не могу, так как не изучал этот вопрос.
5. Stierus - 11 Апреля, 2011 - 17:51:58 - перейти к сообщению
Программирую на php более 6 лет, на пайтон смотрел менее месяца и по поводу "Дело в том, что скоро на меня повесят масштабный проект, и я хочу определиться с используемой для него технологией." - пишите на пайтоне Улыбка

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

В нем частые нестыковки api в разных версиях ... в частности только недавно напоролся на грабли при работе с сфинксом - в разных версиях 5-й php добавляют и убирают обязательные параметры. Писали либу, необязательные поля опускали - все работает. Обновляем версию php - отваливается. Через 2 дня выходит апдейт - снова работает ... смотрим, что было - они этот параметр делают обязытельным и снова убирают из обязательных ... нормуль?Улыбка Тут даже не речь о том, что какие-то проблемы создались, а о самом подходе.

С memcache была проблема, когда в php выплевывался ответ удачного сохранения в memcached, а на самом деле данные свыше порогового значения (если не ошибаюсь, 3 mb) просто игнорировались .... но возвращался при этом true. куча подобных плавающих ошибок довольно много времени жрут у разработчиков и требуют костылей.

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

На php можно писать высоконагруженные системы, те, кто говорят, что это не так - не пробовали Улыбка Но это требует опытных профессионалов, не один год программирующих на этом языке и знающих подводные камни и грабли языка, желательно, знающие еще и другой язык ... нормальный. Как только код (даже по детальному ТЗ) начнут писать juniorы - код медленно начнет превращаться в шлак.
6. SAD - 11 Апреля, 2011 - 18:03:21 - перейти к сообщению
пишу дипломную на php.
на работе используем python(достаточно красивый язык)
7. EuGen - 11 Апреля, 2011 - 18:59:53 - перейти к сообщению
Не хочется разводить holywar. Скажу лишь про себя.
Я создаю высоконагруженные проекты на php. Правда
Stierus пишет:
не один год программирующих на этом языке и знающих подводные камни и грабли языка, желательно, знающие еще и другой язык ... нормальный

.. я месяцев 7 программировал на Ruby (RoR)
Не буду говорить о "за и против" - вряд ли мое субъективное мнение имеет большой вес.
Однако же год за годом ... я создаю высоконагруженные системы на php.

 

Powered by ExBB FM 1.0 RC1