LINUX.ORG.RU
ФорумTalks

[сама наивность] А чем плох PHP?


0

0

Нет, ну серьёзно. Что в нём плохого по сравнению, скажем, с питоном или рельсами? Только вот не надо про типизацию, скорость выполнения и синтаксис. А то думаю может пересесть с пыха, раз его все так не любят


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

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

Звездешь. У руби с питонами уже вагон и маленькая тележка серверов продакшн реди. Про жаву молчу. Погуглите про Jetty, Grizzly. А апач это унылое г, годное только для запуска атавизмов вроде php.

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

> Начальство хотело на аутсорсерах сэкономить. Пока получается плохо.

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

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

>В нашей организации те, кто пишут «форумы» именуются верстальшиками

У верстальщика есть вполне себе формальное определение. Это тот, кто занимается вёрсткой. В контексте Web'а - созданием шаблонов из дизайна.

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

во первых что я писал выше - пехапе плохо интегрируется с нашей не простой инфраструктурой


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

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


А вот тут позволь предположить, что дело совсем не в PHP. Это явно не языковая проблема, в проблема разработки. Не вижу, чем тут PHP хуже, скажем Java.

разные проекты писались разными людьми под разные версии пыха


Опять проблема разработчиков, а не языка. Были, конечно, некоторые проблемы при переходе с PHP4 на PHP5, но, во-первых, их было мало, во-вторых, это было 6,5 лет назад.

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

>Да, вот вопрос: нужный функционал размазан по разным классам (классическая ошибка при декомпозиции)

Ты уже сам сказал, что это ошибка. А мы тут говорим о _грамотном_ подходе.

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

> Ты уже сам сказал, что это ошибка. А мы тут говорим о _грамотном_ подходе

Дык я же сразу написал о рефакторинге, а при «правильном в вакууме» подходе он вообще не нуженю

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

>Дык я же сразу написал о рефакторинге, а при «правильном в вакууме» подходе он вообще не нуженю

Нужен :) При любом правильном подходе со временем появляется функционал, который требует вынесения в отдельные компоненты. Особенно, если используется не менее правильный подход борьбы с преждевременной оптимизацией.

Вот только при правильном подходе рефакторингом занимаются сразу по мере возникновения надобности в нём, а не лепят копипасты и потом плачут, что у них проблемы с выделением общих компонентов во всём этом дерьме :)

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

разработчики фейсбука смотрят на тебя как-то странно.

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

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

> Вот только при правильном подходе рефакторингом занимаются сразу по мере возникновения надобности в нём, а не лепят копипасты и потом плачут, что у них проблемы с выделением общих компонентов во всём этом дерьме :)

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

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

тем не менее, это не отменяет того факта, что на похапе есть крупные и успешные сервисы.

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

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

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

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

>если приложению требуется глобальный рефакторинг

Тут речь (по крайней мере моя) о локальном рефакторинге. Нормальная архитектура подразумевает глобальный подход. А на уровне компонентов в процессе их развития и расширения рефакторинг неизбежен.

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

>Разработчики [..] гугла смотрят на разработчиков фейсбука как-то странно и вертят возле виска

А что ещё остаётся Гуглю, если он при всех своих потугах проигрывает Фейсбуку в нише последнего? :)

http://habrahabr.ru/blogs/social_networks/87874/

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

Тебя смущает округление доли или то, что он с нуля поднялся? :) Ну так, год назад его ещё не было. В ноябре 2009-го был представлен.

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

У верстальщика есть вполне себе формальное определение. Это тот, кто занимается вёрсткой. В контексте Web'а - созданием шаблонов из дизайна.

Так не бывает. Верстальщику всегда приходится писать какой-то код помимо верстки то на на java-script, то на xsl, у нас вот еще и на питоне пишут. Но как-то называть их программистами язык не поворачивается. Все таки совсем к ним другие требования, да и задачи другие. Иногда их называют веб-мастер, или фронтенд-разработчик, но никак не программист.

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

Есть ли платформенно-независимый API для memcached? А для AMQP? Ответ - есть. Но без production-ready реализации в виде библиотеки работать невозможно.

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

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

производительность. про испытания в «песочнице» мнеджерами с золотыми запонками читать нет смысла. им впарить гадость и слинять. а останьм продолжать писать на PHP.

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

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

>>> показываем удобный функциональный форум не на PHP

внезапно ты на нем находишься

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

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

Толсто.

Они взяли общее число посещений, а не уникальную аудиторию.

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

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

> PHP у нас пытались внедрить (аутсорсинговая комманда) и сейчас стоит вопрос о переписывании проекта на питон, причины: во первых

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

в серьезные пехапе проектах обычно

Мм... представитель серьезного бизнеса.

PavelR
()
Ответ на: комментарий от Dimka-Bo

>Предлагаешь всё переписывать заново?

Предлагаю юзать шаблоны, метапрограмминование и вынесение функций в библиотеки

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

>forum.ixbt.com

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

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

На частый рефакторинг заточен Руби, ИЧСХ без всякой необходимости в копипасте

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

>Верстальщику всегда приходится писать какой-то код помимо верстки то на на java-script, то на xsl, у нас вот еще и на питоне пишут.

Это входит в определение вёрстки. И это не является программированием в традиционном понятии.

Ответ - есть.


Ну так в чём проблемы?

Но без production-ready реализации в виде библиотеки работать невозможно.


И что из этого следует? Чем не нравятся библиотеки?

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

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

Был во вторник на конференции mail.ru. Там говорили про 20 000 хитов в секунду. У них там mod_perl + C. Это при том, что перл мертвый уже язык.

Общялся с товарищем из яндекса, у них там проект на питоне держал 2 000 запросов в секунду. Там какой-то wsgi сервер + nginx.

Проблема с продакшном надумана.

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

> Все таки совсем к ним другие требования, да и задачи другие. Иногда их называют веб-мастер, или фронтенд-разработчик, но никак не программист.

Какой няшка. Ути-тю, гордо несет знамя Программиста. Ни веб-мастера, ни тем более фронтед в реестре профессий нет. Это твои коллеги, кодерила зазнавшийся.

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

>чем будете делать, ежели не копипастом?

копипаст - верный путь к появлению трудноуловимых ошибок

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

>Толсто.

Хорошо. Назови социальную сеть, сотрудничающую с Гуглем, которая бы превосходила Facebook :)

общее число посещений

по несколько часов в день пялиться на поисковую выдачу гугла


А какое отношение поисковик Гугля имеет к социальной сети FB? Тёплое к мягкому? :)

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

И что из этого следует? Чем не нравятся библиотеки?

Чем нам не нравятся библиотеки, которых нету? Или они есть, но с багами? Если бы от php было неотвертеться, то да, сели бы и начали лабать реализации. А можно просто взять питон, где уже все есть.

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

>Проблема с продакшном надумана.

Э... «mod_perl + C» - это немного не то, что Django, ты не находишь? Вопрос же о популярных решениях стоит. А тут тесты показывают, что при реальной работе производительность Django такая же, как у Symfony под PHP. А, ведь, это не самый быстрый фреймворк под PHP :)

А так - под PHP тоже можно нарисовать модулей на Си под pecl или на Java под Quercus... Но это уже будет не РHP.

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

> занимаются сразу по мере возникновения надобности в нём, а не лепят копипасты и потом плачут

Заметь, я не говорил, что по коду разбросаны копипасты, я говорил про копипасту непосредственно _для_ рефакторинга. Или предпочитаешь переписать функционал такого модуля с нуля, как истинный Ъ?

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

> Предлагаю юзать шаблоны, метапрограмминование и вынесение функций в библиотеки

Ты же вроде вообще не программист?! Куда ты вообще лезешь со своими теоретическими изысканиями?

До чего ж ЛОР смешон. Один лезет с паттернами (а чо? Я шас это скажу и пасаны с района уважать будут!1), другой ещё с какой-то банальщиной (Есть такая вещь, как функции, вот, в них нужно общие куски выносить1). Тьфу.

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

>Чем нам не нравятся библиотеки, которых нету?

Э... Были упомянуты memcached и AMPQ. Какие проблемы с PHP? Я первым интенсивно пользуюсь. Под второе поглядываю на RabbitMQ, и что-то не видел, чтобы кто-то жаловался на проблемы в PHP-библиотеках под него.

А можно просто взять питон, где уже все есть.


Боюсь, всё же, тут совсем не в языке дело. Но выше по этому поводу уже высказывались :)

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

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

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

Нет, просто это то, что в нём большинству не нравится.

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

>Заметь, я не говорил, что по коду разбросаны копипасты, я говорил про копипасту непосредственно _для_ рефакторинга.

Видишь ли, есть такие вещи, как гиперболы. Я думал, ты про это знаешь :)

...

Кстати, даже без гипербол для рефакторинга копипаст не нужен. Нужен «катпаст» (cut & paste) :D

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

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

Про AMQP - а ну как ассинхронную библиотеку в студию. Я сходу назову txAMQP для питона и AMQP для руби. И интеграция для протобуфа оказалась сломанной. Для питона идет искаропки от самого гугла.

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

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

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

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

Ну да, C# и другие быдлоязычки выясняют «стариков», но те ещё живее всех живых.

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

И все они представители одной профессии: инженер-программист.

Гон. На сколько я знаю, верстальщикам пишут «верстальшик», тестировшикам «инжинер по качеству», админам «инженер службы эксплуатации». Но я могу ошибаться. Но точно не инженер-программист. У меня по крайней мере «программист» написано.

Кстати «инженеры-программисты» стоят отдельного срача. Вот в университет мне сказали, что «инженер-программист» это тот, кто связан с железом, есть еще «инженер-математик» и «инженер-системотехник». Короче тут черт ногу сломит.

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

>Про AMQP - а ну как ассинхронную библиотеку в студию.

Я же писал, что сам AMPQ пока не занимаюсь. Но, повторюсь, масса народа использует тот же RabbitMQ и я не видел жалоб на PHP.

А говорить о том, что язык плохой из-за отсутствия конкретных биндингов к конкретным сервисам, как минимум, некорректно. Тогда Python плохой, потому что нет «продвинутых» шаблонизаторов или биндингов к Tomcat, Java плохая, потому что нет вменяемого биндинга к Ogre3D и т.п. :)

Так что тут корректно говорить не о том, что PHP плох, как язык, а о том, что в _вашем конкретном_ случае он подходит хуже Python'а. И вот это уже будет нормально. Под разные задачи - разные инструменты. Я тоже, когда писал L2J-сервер, не задумывался о его переносе на что-то иное, кроме Java, ибо именно Java там была лучшим выбором. И когда я пишу скрипты на Python, я пишу их не почему либо ещё, а только потому, что они лучше подходят под задачу. И точно также я сайты свои делаю сейчас на PHP, потому что он под мои задачи - лучше. 10 лет назад - делал на Perl. Тогда был лучше он. Но когда оказалось, что PHP лучше отвечает нужным задачам, перешёл на него не утверждая, что Perl - плохой язык :D

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

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

LOR

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

Проблема с продакшном надумана.


яндекс


mail.ru


ничего не смущает? сколько процентов серверов они могут себе позволить что-бы они зависли от большого обращений?

а где mod_perl + C , там и справится чистый PHP и гораздо лучше.

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

>LOR

Три раза уже отвечали. Но ЛОР - ни разу ни удобный, ни функциональный :) Он страшен как ядерная война и удобен, как кровать йога...

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

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

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

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

> Пых вытеснил перл из сектора хоумпаг потому что пых в разы проще и на нём могут писать люди, очень далёкие от программирования. А кто и зачем вытеснит пых?

Продукты на которых сайты которые делаюся на пыхе будут делатся мышкой и парой конфигов.

Подумай что случилось с делфи который обладал пыховыми свойствами.

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

> Гон. На сколько я знаю, верстальщикам пишут «верстальшик», тестировшикам «инжинер по качеству», админам «инженер службы эксплуатации». Но я могу ошибаться. Но точно не инженер-программист. У меня по крайней мере «программист» написано.

Напоминает пересказ эпической книжки про какашки: они бывают круглыми, продолговатыми...

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