LINUX.ORG.RU
ФорумTalks

Мифы о PHP


0

0

Читая ЛОР почему-то встретил тут жёсткую антипатию к PHP, с кучей комплексов (думаю просто Питонщики завидуют популярности)

Так вот, достаточно долго сидя на форуме PHP кодеров я увидел там такие кадры, например:

"ааа, понял. Я просто не знал что ASCII и dec - одно и то же. Спасибо."

Скажу вам что это быдло. Но на PHP пишут достаточно много хороших профессиональных веб-разработчиков. PHP даёт гибкие инструмены для решения кучи задач. Он легок к изучению (его можно выучить за один вечер). Просто из-за того что он лёгкий к изучению на него рвётся писать куча леммингов которые только что изучили Visual Basic и считают себя крутыми кодерами. Это не проблема PHP что он прост.

Фактически PHP - это Java с немного более простым синтаксисом и динамической типизацией. PHP обладает почти всеми возможностями Явы (начиная от рефлекции), а кое где и даже больше.

Давече тут читал вопли одного лемминга на том-же форуме о том что PHP говно, а Руби рулит. Только этот лемминг привести определение ООП несмог. (http://phpclub.ru/talk/showthread.php?s=&threadid=106821 кому интересно)


Ответ на: комментарий от troorl

Есть нестандартные библиотеки, PHP-GTK например. Но вобще соглашусь что PHP больше на веб заточен. Но написать на нём скриптик (через php-cli) для своих нужд тоже не проблема.

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

>Ну я же не сказал что PHP это Ява - он разные, но это оба языка работают на основе виртуальной машины. PHP изначально планировался как процедурный язык, но скажите мне - в 5 версии (4 версия уже End Of Life) такой слабый ООП?

пожалуйста простите мне, поскольку я только частично понимаю ваш вопрос

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

> а чего говорить о языке у которого логические блоки строятся на основе табуляции?

на просто стало завидно, что мы не можем запутать код так, что даже с литром водки его не распутаешь, поэтому сделали обязательные табуляции )

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

К сожалению Двач сегодня это не двач полгода назад. Сейчас его заполонили орды быдлошкольников с БОРа транзитом через Лукоморье

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

> Но такой вопрос - в C++ нет нативной поддержки юникода - из этого следует что C++ говно?

У них таки разные сферы применения. Плюсам нативная поддержка юникода, мягко говоря, ненужна.

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

Всё зависит от того кто пишет. Есть спец. средства для всех Си подобных языков для форматирования (причём они обычно всторены в редакторы/IDE)

kode
() автор топика

>Фактически PHP - это Java с немного более простым синтаксисом и динамической типизацией

Бугага изподстула

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

> на просто стало завидно, что мы не можем запутать код так, что даже с литром водки его не распутаешь, поэтому сделали обязательные табуляции

+1, в чём питон проигрывает пыху, так это в возможности запутать и загадить код до такой степени, что и родная мама (автор кода) не узнает :)

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

это я не к тому что двач небыл биореактором рунета

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

> хватит газификации, давайте примеры. А я вам за 2 секунды распутаю )

Поверь, если бы я тебе дал моё первое проданное приложение на пыхе, ты бы его не распутал. Если бы мне предложили сейчас 500 бакинских за консультацию по своему же коду в этом приложении, я бы не согласился :) А ведь я пытался там использовать ООП как никак :)

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

в чем питон проигрывает пыху однозначно - это в простоте прикручивания его к апачу, да и вообще интеграции с веб-сервером.

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

> в чем питон проигрывает пыху однозначно - это в простоте прикручивания его к апачу, да и вообще интеграции с веб-сервером.

О_о это в каком месте?? Очень просто он прикручивается и к апачу, и к lighttpd

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

> в чем питон проигрывает пыху однозначно - это в простоте прикручивания его к апачу, да и вообще интеграции с веб-сервером.

отсутствием нормальных MVC фреймоков, без всяких ацелераторов проигрывает очень сильно в скорости, а register_globals это просто песня )

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

> Вам хочется поднять свой рейтинг в глазах других?

забей, мы тут выясняем что лучше, не обращай внимания на тролля ) не нада больше кормить тролля )

phasma ★☆
()

>Фактически PHP - это Java

бугагец

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

> > чё-то топикстартер поднасрал и убежал

> Он вернулся и решил размазать.

видимо он любит обмазываться несвежим пыхпыхом :)

overmind88 ★★★★★
()

>Питонщики завидуют популярности

Дальше можно не читать. Афтору: поперёк, до результата.

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

> ps: если человек утверждает, что мол "язык XYZ - это говно!" причём совершенно не важно какой именно язык, он тем самым саморучно расписывается в собственной профессиональной несостоятельности.

+много, ППКС и всё такое.

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

у меня комплекс неполноценности всвязи с моей профессиональной деятельностью (я пишу на PHP)

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

Вы недавно хотели потроллить, а теперь признаетесь в нарушении вашей психики, как думаете это связанно?

wfrr ★★☆
()

Вещества. Резать вдоль.

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

> отсутствием нормальных MVC фреймоков, без всяких ацелераторов проигрывает очень сильно в скорости, а register_globals это просто песня )

ну и? Zend Optimizer для чего придуман? а регистер глобалс и выключить можно.

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

> ну и? Zend Optimizer для чего придуман? а регистер глобалс и выключить можно.

Zend Optimizer только в теории может дать нормальный прирост ) одно то, что оно есть говорит о непродуманности языка

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

> а регистер глобалс и выключить можно.

Оно по дефолту и выключено.

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

>Ну, какой код вы напишите если вам нужно проверить пришел ли параметр и не пустой ли он? И отправить дальше коду.

Недостаточно чёткие условия.

if(!$string) return;
...

if(empty($some)) return;
...

if(!isset($some)) return;
...

if($var === NULL) return;
...

и т.д. в зависимости от условий - вариантов много.

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

>Kакой смысл сегодня, в 21м веке сравнивать между собою языки, не имеющие нативной поддержки юникода.

Это ты про какие языки?

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

>empty при отсутствии переменной выдает что?

true.

isset выдаст true, если переменная существует.

Ещё есть === NULL - на предмет отсутствия переменной.

Ты уточни, всё-таки, чего ты хочешь.

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

>>А что тебе мешает написать класс собственный String?

>Вы там все такие лисапедисты? вам еще за это платят.

Видишь ли, в нормальной системе iconv программисту в основной задаче не требуется вообще. Всё автоматом при вводе конвертируется в единую кодировку (скажем, тот же utf-8) и также автоматов конвертируется при выводе. Если программист непосредственно использует iconv - он что-то недодумал.

А если брать, к примеру, тот же join - то с логикой

$s = join(",", $array); всё понятно.

А что у нас с логикой в

s = ",".join(array) ?

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

> +1, в чём питон проигрывает пыху, так это в возможности запутать и загадить код до такой степени, что и родная мама (автор кода) не узнает :)

До Перла им обоим как до Луны на карачках :D

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

>отсутствием нормальных MVC фреймоков

У меня отличный MVC-фреймворк. С ORM. Я доволен :) Все желающие могут забирать под GPL с hg.balancer.ru

>без всяких ацелераторов проигрывает очень сильно в скорости

А кто мешает использовать акселератор? Религия? Ну поставь Quercus. Будет та же скорость без акселератора.

> а register_globals это просто песня

А... Ещё один Рип Ван Винкль? :) register_globals в PHP5 отключен по дефолту, из PHP6 выкинут вообще, а мною не используется с 2001-го года. А ты всё ещё его используешь, что ли? :D

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

> У меня отличный MVC-фреймворк. С ORM. Я доволен :) Все желающие могут забирать под GPL с hg.balancer.ru

мы тут какашками кидались, а ты пришел и все испортил )

> А кто мешает использовать акселератор? Религия? Ну поставь Quercus. Будет та же скорость без акселератора.

ну Python с JIT побыстрее будет ;)

> А ты всё ещё его используешь, что ли? :D

пришлось весь движек переписывать, что бы выкинуть его ))) я уже фигею со всего этого ... уже пошли куски кода:

<?
$result = sql_query()

while($row = sql_fetch_assoc) {

?>

<input value="<?=$row[a]?>">
<input value="<?=$row[b]?>">
<b><?=$row[c]?></b>

<?
}

?>

слабо стоко выкурить ?) а в таблицах бывает и по 10 полей )

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

>>тот же utf-8

>utf-8 не может быть внутренним представлением

А мне шашечки? Мне пофиг, как оно внутри системы представлено. Внутри фреймворка оно в utf-8. И поэтому работает с любыми символами других кодировок.

KRoN73 ★★★★★
()

PHP - это язык на котором легко писать простые вещи при усложнении задачи возникают проблемы

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

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

>мы тут какашками кидались, а ты пришел и все испортил )

Ну... Я так, за справедливость :) В PHP (как и в любой другой язык) какашками можно и за дело кидаться, а не за выдуманные проблемы :D

> ну Python с JIT побыстрее будет ;)

Угу, не спорю, но человеку не нравятся сами акселераторы чем-то :)

>пришлось весь движек переписывать, что бы выкинуть его )))

Ну вот, а мне проще было, я просто свой фреймворк слепил. Где, как уже писал, с ~2001-го не было register_globals :) При чём, полагаю, что в 2001-м то и альтернативы не было, ни в PHP, ни в других языках. Народ фреймворками тогда не увлекался, всё больше системы под задачи писал :)

> while($row = sql_fetch_assoc) {

Вай-вай-вай... Это первое, от чего я избавился у себя, как только за PHP взялся :) Самый прикол, что нет ничего более постоянного, чем временное. Написанным лет пять-шесть назад драайвером mysql почти без изменений и сейчас пользуюсь. Над ним надстройки в виде субдрайвера, ORM, но в глубине - всё тот же старый obsolete/DataBase.php :) > <input value="<?=$row[a]?>">

А вот формы начал фреймворком совсем недавно генерировать, буквально в прошлом году. Хотя сажать html-код в PHP прекратил лет пять назад :)

>слабо стоко выкурить ?) а в таблицах бывает и по 10 полей )

Дык, забей. У нас, вот, в показателях авиакомпаний до 35 полей :) При чём они ещё группируются. И собираются по типам отчётов. Получается что-то типа такого: http://www.aviaport.ru/directory/aviafirms/770/reports/ (отображены там только заполненные поля и периоды).

На всё это - ни строчки HTML в PHP, ни одного прямого запроса к базе, одни ORM, условия запросов, условия в шаблонах :)

Время на написание такого рода подраздела, включая полнофункциональную админку, отладку, доводку дизайна - менее рабочей недели. При чём ещё с постоянным сидением на ЛОРе :) Т.е. чистыми - день, где-то, на написание и отладку и день - на доводку.

...

Раньше, пользуясь голыми PHP или Перлом я б такую фигню писал бы недели две, не имея времени на ЛОР :D

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

>PHP - это язык на котором легко писать простые вещи при усложнении задачи возникают проблемы

Не согласен. Сейчас код только расширений www.aviaport.ru - около 2Мб. Система очень толстая по функционалу, до чёртиков всего просто не видно. При этом ни разу не возникла проблема утыкания в масштабируемость. Фреймворк изначально закладывался микроядерным и поэтому расширяется и усложняется очень легко, без серьёной возни с кодом. Сейчас, правда, иногда выскакивают ошибки вследствии того, что ядро фреймворка капитально рефакторится, выкидывается много мусора, который тянется аж от 2001-го года, сводится воедино код трёх-четырех форков проекта... Ещё нужно избавиться от нескольких необъектных подсистем (как уже говорил, система микроядерная, имела несколько функциональных расширений, пока не получил вариант, перекрывающий функционал всех остальных решений вместе взятых :)).

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

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

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

>ну я не спорю ) правда рвусь на пайтон

А я не рвусь :D Ибо, когда появится спрос, смогу перенести систему на него с сохранением идеологии и внутренних форматов файлов данных и БД. Т.е. Питон мне больше нравится, но задач пока под него нет.

...

Зато есть мысль попробовать на своём сервере Tomcat или Resin с Quercus'ом - тогда можно вообще тупо наращивать функционал уже имеющейся системы, запустив её под Quercus (проверял - работает в нём) за счёт Java/Juthon/JRuby/JBForth :) Но пока не до того. Сперва надо спихнуть одну подработку, которую затянул по ряду причин аж с конца января, потом добить до конца рефакторинг фреймворка, затеять организацию документации по нему (вдруг кто-то у себя захочет задействовать) и только потом, в рамках L2Fortress/OpenWorlds думать про интеграцию с ними под JVM ещё и фреймворка :)

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

> Ваши представления о PHP на уровне 5 дней изучения.

да ?) значит мне нужно использовать ORM + шаблонизатор + Фреймвок ?) ты эта, сходи почитай про Джангу хотя бы иль Пайлонс ... и сравни их с вот тем, что назвал )

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

ну впринципе многие ресурсы начинали с похапэ, потом переползли на всякие пайтоны с джавами, мошт и я доживу до этого дня ) просто легче написать с нуля движек, чем этот тянуть, при том я не могу открыть этот, т.к. тут всего 60% где-то переписано )

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