LINUX.ORG.RU
ФорумTalks

Почему ЛОР так не любит PHP?


0

0

Все время мучает меня этот вопрос - почему?

Где не вспомнять эту аббревиатуру, сразу начинается жесткий флейм, какой он плохой и т.п. Чувствую здесь щас начнется тоже самое, так что просьба - без флейма, объясните мне.

★★★★★

Не ЛОР, а наиболее активные участники, за которыми совсем не всегда стоят реальные проекты или хотя бы дела. Это большая разница.

Shaman007 ★★★★★
()
Ответ на: комментарий от Shaman007

хм. Если учесть что большинство активных участников - анонимусы, и это самая многочисленная группа лора, то можно сказать, что лор не любит PHP

lester_dev ★★★★★
() автор топика

Возможно ПХП как язык объективно не очень хороший (можно сказать плохой)? С другой сторону у него есть такие приемущества как распространённость и большое количество наработок...

CrazyPit ★★★
()
Ответ на: комментарий от anonymousI

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

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

lester_dev ★★★★★
() автор топика
Ответ на: комментарий от lester_dev

Ну вот... Лор любит, лор не любит... лор - некая абстракная распределенная биологическая масса...

Ian ★★
()
Ответ на: комментарий от CrazyPit

каждое мнение субьективное. плохой в каком смысле? я вижу си-подобный синтаксис, простой и понятный, большое количество наработок как ты сказал. Из минусов могу с натяжкой назвать некоторую тормознутость по сравнению с компилируемыми языками, но для меня это не критично. Что я упустил?

lester_dev ★★★★★
() автор топика
Ответ на: комментарий от lester_dev

Потому как крутые пацаны не кодят на быдлоязыках. А если серьёзно - просто банально подражают антику и хотят собрать мнимых поинтов крутизны. Обычные лузеры одним словом.

anonymousI
()

Просто неокрепшие детские души боятся, что Луговский обзовет их быдлокодерами :-)

no-dashi ★★★★★
()
Ответ на: комментарий от lester_dev

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

Ну собственно для простенького сайти PHP как раз очень даже ничего - там, где надо примитивную логику типа "выбрать-из-таблицы-и-отформатировать". Форум, прайс-лист, гостевуха, каталог товаров. 75% заказчиков больше и не нужно, а с этими задачками PHP справляется на раз плюнуть.

no-dashi ★★★★★
()
Ответ на: комментарий от Xellos

В который раз фанатеги пукнули по лужам и разбежались.

anonymousI
()

А кстати да. Нормальный вроде язык. Никто ничего конкретного против него не приводит, так только одни писки и визги.

AlexKiriukha ★★★★
()
Ответ на: комментарий от no-dashi

no-dashi, Wikipedia - это "простенько"? PHP - хороший инструмент. Не отличный, не "круто-непонятный", а просто хороший, очень хорошо делающий именно свое дело. Тот факт, что приложение написано на языке Ада, Lisp или haskell не делает его ни плохим ни хорошим, если не брать во внимание тот факт, что третьим людям будет очень трудно понят код в силу простой непопулярности этих языков.

Shaman007 ★★★★★
()
Ответ на: комментарий от lester_dev

> Что я упустил?

Огромное количечество функций в стандарте. Плохая модульность.

ООП сбоку-спрепёку-через-зад.

Совершенно ублюдочная система типов и преобразований ведующая к куче ошибок.

Мегакривая реализация языка, количество ошибок в трансляторе огромно.

Провокация новичков на неотделение логики от представления.

(???) Отсутсвие стабильных фрэйморков с грамотным комьюнити - верней их СЛИШКОМ много поэтому силы сильно рассеяны.

Из последнего - подражение джаве, но в связи с убюдочным ООП очень плохое.

Короче в той нише где сейчас ПХП очень хорошо смотрится Ruby On Rails, единственный минус которого это порог вхождения кодера... Ну и (пока) малое количество хостингов.

CrazyPit ★★★
()
Ответ на: комментарий от no-dashi

> Ну собственно для простенького сайти PHP как раз очень даже ничего - там, где надо примитивную логику типа "выбрать-из-таблицы-и-отформатировать" Форум, прайс-лист, гостевуха, каталог товаров. 75% заказчиков больше и не нужно, а с этими задачками PHP справляется на раз плюнуть.

На RoR это быстрее и безглючнее. Факт. Объективный.

CrazyPit ★★★
()
Ответ на: комментарий от no-dashi

вот именно. Для своей ниши он имхо подходит как нельзя кстати.

lester_dev ★★★★★
() автор топика

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

Во-первых, встать именно по языковым возможностям хоть на сантиметр ближе к языкам "общего назначения", таким, как Python или Ruby, PHP не сможет раньше шестой версии. Пятая ветка -- это скорее переходной этап, как что-то полноценное я ее рассматривать не берусь. Это во-первых. А во-вторых, быдлохостинги вовсю используют четверку, и это гуано мне тычут как требование в ТЗ.

Гуанистость проявляется собственно вот в чем.

Язык у нас ориентирован на веб. А раз так, то он должен облегчать веб-разработку до максимума. Тем не менее, стандартного фреймворка для хотя бы того же MVC там просто нет. Либо пиши свое, либо рассматривай вагон и тележку готовых, каждую со своими сдвигами по фазе.

Впрочем, это не предвидится и в следующих версиях. Блин, Ruby ни разу не веб-язык, но Rails у него есть, причем как стандарт де факто!

Во-вторых. Часто нужные функции array_map, array_filter и прочие жутко неудобны потому, что создавать анонимные функции неудобно. А создавать анонимные функции (через create_function()) неудобно потому, что Zend не позволяет от них избавиться. Для них unset() не пашет, даже если ты можешь доказать, что эта функция никогда больше тебе не понадобится.

В связи с этим еще одна фень. Функции в рантайме можно задавать только через строки. В Javascript это в разы лучше.

Результат работы некоторых функций нужно предварительно помещать в переменную, а уж потом что-то с ней делать. Когда так делать, а когда нет, на поверхности отнюдь не плавает, изменяется от версии к версии и заставляет лезть в букварь на каждый чих.

Лично моя придирка, если функцию можно задать как одно выражение, я хотел бы синтаксис вида function sum($a, $b) = $a+$b;. Наболело.

Об ООП сказано много. Итог один, it sucks. В PHP 5 оно всего лишь sucks less. Python в данном плане намного лучше, там абсолютно все суть объекты (хотя никто не просит применять парадигму в явном виде). В PHP разработчики постарались сделать так, что используя ООП, ты ни на секунду не забываешь, что используешь именно ООП, и что это жутчайший костыль.

Ну и в конце концов то, что core в PHP насчитывает несколько тысяч функций, то, что все они находятся в глобальном пространстве имен, а также то, что ни PHP 4, ни PHP 5 не содержат концепции пространств имен, ставит в зачОтке PHP жирный минус.

Need we say less? Тем не менее, на PHP можно писать и хороший код. Главное, не смотреть на "бисплатные скрепты ат наченаюсчих" и иметь хороший бэкграунд как в других языках программирования, так и в разных подходах к программированию в целом.

shimon ★★★★★
()
Ответ на: комментарий от CrazyPit

черт ты разбомбил весь фундамент, на котором зижделась моя уверенность в пхп :(

lester_dev ★★★★★
() автор топика

Посмотрите, насколько часто и какого рода находят баги в интерпретаторе php...

Или все уже забыли, например, дыру в самом php, из-за которой стали уязвимыми все более-менее сложные скрипты (уровня IPB и vBulletin)?

Или это по вашему нормальное для языка явление?

Ramen ★★★★
()
Ответ на: комментарий от shimon

блин а ты вообще вогнал меня в ступор. я просто писАл и не думал что все так плохо :(

lester_dev ★★★★★
() автор топика
Ответ на: комментарий от shimon

Почти одно и тоже написали:))

Вот сейчас куча предложений ПыхПых кодером работать, думаю уж лучше перл:)

CrazyPit ★★★
()
Ответ на: комментарий от shimon

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

Эксепшоны, правда, появились в пятерке, которая очень медленно набирает популярности и пусть так будет, я бы лучше хотел, чтобы шестой PHP раскрутили как четвертый. Там намек на архитектуру появился.

Еще мне жутко нехватает pure numeric и pure associative arrays. Первым чтоб нельзя было указывать не-числа в качестве индексов, вторые, если их индексы похожи на числа, чтобы не перенумеровывались функциями типа array_merge().

А также NULL, который чтобы не был ни true, ни false, ни 0, ни ''. При работе с БД очень полезно.

shimon ★★★★★
()
Ответ на: комментарий от shimon

> Скажем так, я уже третий год жизни транжирю на работу с этим языком...

> shimon * (*) (15.06.2006 23:46:14)

Вот из-за таких объяснений/мнений и стоит читать LOR.

AlexKiriukha ★★★★
()
Ответ на: комментарий от CrazyPit

> Провокация новичков на неотделение логики от представления.

Я тебе вот что еще скажу. При применении MVC PHP отлично годится в качестве view как язык для встраивания в шаблоны. Там ему место самое. Остальное от лукавого.

(В связи с чем порой приходится с этим самым лукавым идти на сделки и писать на PHP и Model, и Controller.)

shimon ★★★★★
()
Ответ на: комментарий от CrazyPit

php - язык без идеи..

C,C++,Java,List и прочие есть реализованная идея; PHP - винигрет из недостатков остальных языков.

P.S. У PHP программистов клавиша shift изнашивается в 3 раза быстрее чем у прочих

MKuznetsov ★★★★★
()
Ответ на: комментарий от se

Мой неискушенный взгляд заметил там огромный switch. Я угадал?

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

shimon ★★★★★
()
Ответ на: комментарий от shimon

> Я тебе вот что еще скажу. При применении MVC PHP отлично годится в качестве view как язык для встраивания в шаблоны. Там ему место самое. Остальное от лукавого.

Кстати да (но руби лучше ессно:)) Но почему-то большиство ПХПшников пропогандируют smarty (кстати как DSL он лушче чисто ПХП в простых случая) но расширяется он имхо кривовато

> (В связи с чем порой приходится с этим самым лукавым идти на сделки и писать на PHP и Model, и Controller.)

Кстати не посоветуешь грамотный MVC фрэймворк на ПХП а то я это гуано по всему инету запарился разгребать, просто велосипедный парк какой-то...

CrazyPit ★★★
()
Ответ на: комментарий от MKuznetsov

На работе самая стертая клавиша -- "стрелка вниз". Дома левый Shift и Tab. Дома я очень мало пишу на ПХП :)

shimon ★★★★★
()
Ответ на: комментарий от CrazyPit

> Кстати да (но руби лучше ессно:)) Но почему-то большиство ПХПшников пропогандируют smarty (кстати как DSL он лушче чисто ПХП в простых случая) но расширяется он имхо кривовато

Кривовато. Знать его полезно вот почему: его часто хотят заказчики и с ним все же быстрее, чем без него. Я думал и решил вот такое: у меня уже давно есть движок, который всего лишь заменяет плэйсхолдеры. Так вот, его можно модернизировать: чтобы можно было подставить не только строку, но и результат работы метода (подобно тому, как в ROR ActiveRecord работает с полями таблицы). Простота останется, инкапсуляция тоже (View не рассыпется по всему коду, а останется в одном объекте), гибкости добавляется вагон и тележка.

> Кстати не посоветуешь грамотный MVC фрэймворк на ПХП а то я это гуано по всему инету запарился разгребать, просто велосипедный парк какой-то...

Говорят, Biscuit и Symfony (sic!) неплохи собой. Но они хотят PHP5, так как им нужен более доделанный ООП. Есть несколько портов Struts и Rails, к которым я еще, к своему сожалению, не приглядывался.

shimon ★★★★★
()
Ответ на: комментарий от AlexKiriukha

> Вот из-за таких объяснений/мнений и стоит читать LOR.

Иногда, когда мое сознание изменено под влиянием тяжелого рабочего дня, меня пробивает писать вежливо, грамотно и по существу. :)

shimon ★★★★★
()
Ответ на: комментарий от shimon

> Говорят, Biscuit и Symfony (sic!) неплохи собой. Но они хотят PHP5, так как им нужен более доделанный ООП. Есть несколько портов Struts и Rails, к которым я еще, к своему сожалению, не приглядывался.

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

CrazyPit ★★★
()
Ответ на: комментарий от Ramen

> Или все уже забыли, например, дыру в самом php, из-за которой стали уязвимыми все более-менее сложные скрипты (уровня IPB и vBulletin)?

Справедливости ради: в vBulettin я не так давно выгребал вагон багтрэка. Причем речь шла о самом vBulettin.

Приговор: если скрипт достаточно сложен, приходится смотреть в кишки зенд-машине, и не надеяться наивно, что есть язык, и он диктует свою реализацию.

shimon ★★★★★
()
Ответ на: комментарий от CrazyPit

> Огромное количечество функций в стандарте.

Я бы исправил на "огромное количество пересекающихся функций в стандате". Возьмём, допустим, все аналоги addbackslashes, кто скажет, какая функция останется, а какая уберётся.

На примере 5.1.1(вроде бы) видим, что в стане разработчиков кто в лес кто по дрова: Наваяли новую версию, а потом пришлось выпускать новую, в которой половину отменили.

Фреймворков, вернее, потуг на фреймворки много, но из них можно пересчитать по пальцам на одной руке те, в которых много тараканов. В остальных - тараканов просто ОЧЕНЬ много!

В общем, содзаётся впечатление, что пишется левой пяткой(иногда при подключении правой).

Deleted
()
Ответ на: комментарий от shimon

>> Вот из-за таких объяснений/мнений и стоит читать LOR.

> Иногда, когда мое сознание изменено под влиянием тяжелого рабочего дня, меня пробивает писать вежливо, грамотно и по существу. :)

Просто надоели посты типа "У меня писька 3,4 по писькомеру", "А у меня 4,3". А так - доходчиво и толково. Спасибо.

BTW в топике про висту было тоже пару толковых постов про X протокол и Ethereal. А все остальное - флуд, из которого вылавливаешь интересные моменты.

AlexKiriukha ★★★★
()
Ответ на: комментарий от AlexKiriukha

Именно то что я хотел услышать - четко и ясно. Спасибо CrazyPit, shimon, Dimez. Постараюсь учесть ваши замечания когда буду писать - это все равно придется делать, т.к. менять чтолибо уже поздно. еще раз всем спасибо!

lester_dev ★★★★★
() автор топика
Ответ на: комментарий от lester_dev

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

shimon ★★★★★
()
Ответ на: комментарий от shimon

> Мой неискушенный взгляд заметил там огромный switch. Я угадал?

твой неискушенный взгляд не заметил там на переднем плане косячок :)

anonymous
()

Гуано можно накодить на любом языке. Просто за PHP в 90% случаев берутся люди не имеющие серьёзного багажа знаний, умений и навыков. Оттого его и кличут быдлоязыком (это всегда так, любая так же динамично развивающаяся сфера как web привлекает тучи желающих задёшево погреть руки)

Так что не в языке все дело, а в сфере его приложения.

r_asian ★☆☆
()
Ответ на: комментарий от r_asian

>Гуано можно накодить на любом языке.

Можно. Но на асме это сделать на порядок сложнее, а на пых-пых на порядок проще, чем где-либо.

Xellos ★★★★★
()
Ответ на: комментарий от Shaman007

> третьим людям будет очень трудно понят код в силу простой непопулярности этих языков

Не люди, а биомасса какая-то: понимают тем лучше, чем большее количество других людей поняло... 8-О

yyk ★★★★★
()

потому, что php-кодеров больше, чем php-программистов, причём на много => общее качество php-проектов, мягко говоря, ужасно. более того, существует масса людей, которые думают, что если они выучили php(именно выучили), то они мегакрутые гуру-программисты.

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

asgard
()
Ответ на: комментарий от no-dashi

Счас это называется CRUD и для этого даже языка знать не надо, берешь Ruby on Rails, создаешь нужные таблицы в БД, а дальше оно все само. По крайней мере так пишут в инете. Ruby визуальный язык для манагеров

anonymous
()
Ответ на: комментарий от anonymous

Сам пытаюсь разбираться. И не так там все просто. Действительно простенький сайт можно сделать легко, без кодирования почти, но что-то посложнее, так быстро не получиться. Хотя на мой не профессиональный взгляд в Рельсах все выглядит логично и понятно.

Да уже хотя бы и базу из нескольких табличек спроектировать нормально манагер не осилит.

Alex_A_V ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.