> Где я такое писал? Я писал, что у него коннекторы на PHP, Perl, ColdFusion, ASP, JAVA и ASP.Net. Пока видел утверждение, что его можно _прикрутить_ к Ruby. Уговорил.
> Не ошибается тот, кто ничего не делает. Вот ты, например, ничего не сделал. Где 4 форума? Где интернет-магазины? Где GroupWare системы? Пока видел только один форум.
Друк, я ж дал тебе даже название файла для интеграции с python, который в официальном тарболе есть...
Твои утверждения наводят на мысль что "Солженицина не читал, но осуждаю"
>Шаблоны smarty слишком много умеют, и провоцируют разработчиков засовывать в них слишком много логики. Как в нашем любимом недоязыке PHP. Напротив, в Django вся логика пишется на питоне, а язык шаблонов там сделан в духе здорового минимализма. Как результат, шаблоны можно отдавать всяким дизайнерам-верстальщикам, которые в Питоне ни бум-бум, и они при всём желании не смогут ничего сломать.
Только не надо, про то что верстальщики смарти запутаются. Пойду наешму арт-директору и верстальщице расскажу.
Там нотис вываливается если ты создаёщь объект и тут же его возвращаешь. Они это запретили, теперь надо вначале переменную делать, а потом её возвращать.
> Python видел. Давайте на питоне - форумы, интернет-магазины, groupware, чего там еще... :) Инфраструктуру, короче.
Вся проблема в том, что кругозор твой заканчивается только "форумы, интернет-магазины, groupware"... а можно его расширить? есть что-то аналогичное zope на php? А про groupware я вообще умолчу. Поделкам на php еще очень дааалеко до intranet-систем, которые реализуют на zope. Нужно cms'ка - не хочешь zope, поставь сверху plone и т.п. Зайди на zope.org, plone.org... почитай. Не нравиться python/zope выбирай java/jboss, например.
а форумы, интернет-магазины - это не enterprise. Какая-такая бизнес-логика в форуме может быть? Примитивнейшая rule-base авторизация, да хранение того, что написали.
> Ну вот и получается, что весь интернет работает на PHP, а крутые перцы пишут крутые CMS...
Для тебя "весь интернет" это интернет-магазины и форумы, блевнички всякие (кстати, жж почему-то не на пхп писан), гостевухи? Мелкие странички с примитивным функционалом -- да, на пхп, ибо дешевле и быстрей. Но это _далеко_ не весь интернет.
>> Не нравиться python/zope выбирай java/jboss, например.
> Ну вот и получается, что весь интернет работает на PHP, а крутые перцы пишут крутые CMS...
Круче таких перцев только яйца, а выше только звезды... 80% это хомяки писанные недопрограммистами на php. И что из этого получается? Слишком завышенное самомнение у большей части вышеназванный пользователей (разработчиками их как-то язык не поворачивается назвать) сети - вот что получается. Выкини их из статистики и будет равномерное распределение между php/perl/python/ruby/java
на php, на php... cisco'всие ios'ы на php os'ы на php системный софт на php одним словом, все на php, а... стой, не все... по непроверянным сведениям, в сети есть пару-тройку ресурсов. один, вроде как на c, еще один на ruby, где-то там рядом java пробегала, на python'е где-то было, и один кадр мне по секрету сказал, что он видел один ресурс на perl, но просил не выдавать, где он находится. Я пообещал, так что... извини, не могу сказать.
>Ну, можно поднять модную тему "ускорителей интернет".
Можно, я как раз через неделю-две начинаю предоставлять подобный сервис (на время тестирования бесплатно), точки для хорошего latency пока только в Европе и России..
В качестве ремарки. Подавляющее большинство хостеров поддерживают лишь пхп4, подавляющее большинство "проектов" писано/пишуться на нём же, так что если мы говорим о доминировании пыхпыха, то именно четвёртого.
> В качестве ремарки. Подавляющее большинство хостеров поддерживают лишь пхп4, подавляющее большинство "проектов" писано/пишуться на нём же, так что если мы говорим о доминировании пыхпыха, то именно четвёртого.
Небольшая ремарка. Более-менее солидные проекты не используют шаред-хостинг. Как минимум VPS или даже колокейт. В этом случае что нужно то и будет.
>А выше вон, интернет ускоряют. В общем видно проснулась секта телепатов.
Много разных алгоритмов паковки применяют по разным протоколам, вот и ускорение :) На форумах как ipb, с их стандартными шаблонами ~80% трафика можно сократить.. 150кб или 30кб, что быстрее на модеме загрузится ? :)
> Нужно прикреплять к сущность картнику, файл картинки хранится в поле таблицы, нужно аплоадить его в той же форме. В rails это делаеться 1 строкой в контроллере 1 во view. Как с QuickForm?
Определяешь свой qf_type = 'image', код для аплоада есть готовый. Да,
согласен, на три строки больше получилось.
> Это не преимущество, а особенность реализации. Я тоже могу сделать то-же самое, но предпочитаю таблицы добавлять через phpmyadmin.
Таки это преимущество. Новые поля можно генерить прямо в коде на лету
в зависимости от конфигурационных параметров, например.
> Я тебе про другое толкую. Мне на пхп пришлось писать в полтора раза больше кода.
Возможно... Но у меня-то кода столько же! И ты ниасилил ;)
> Во-первых все SQL запросы ручками.
А у меня sql генерится из определения объекта...
> Потом в синтаксисе нету многих приятных вещей.
Ну, на столь железобетонный аргумент отвечать крайне трудно, если вообще
возможно. Тема не раскрыта, сильно влияют личные пристрастия и
способности к обучению. Вот, к примеру, ты не осилил работу c ORM.
Можно ли в этом винить язык программирования?
> Потому что я уже просто УСТАЛ на нем программировать.
Верю. И могу сказать, почему такое происходит. Это происходит из-за
пробелов в знаниях, и не является спецификой php. Хотя... возможно
люди обжигаются на том самом пресловутом низком пороге вхождения?
Сильно расслабляются, и думают, что всё знают?
> По сути да, запись выше создает не только страницу с формой но и страницу с табличкой, со списком всех новостей, разбитых на страницы.
И мой код даёт ту же функциональность. Список с разбивкой на странички
делает DB_Datagrid, построенный на шаблонах Smarty или Flexy на выбор.
Что ещё на ваш взгляд есть такого в RoR, чего нельзя или тяжело сделать
в php средствами библиотеки pear? Пока что все ваши аргументы
рассыпаются в мелкую труху.
> И у меня без кода. И без SQL. Так в чём разница, или, как говорят в рекламе, за что платить больше?
Как-же так без кода, а то что ты привёл уже не код? SQL один фиг меньше бы занял. Да и вообще мне в этих QuickForm Не нравиться (А верней это огромный просчёт проектирования) то что данные о предстваление (например о количестве строк и столбцов textarea) задаются в моделе - это очень не хорошо.
> Желающие могут убедиться, что ЖЖ написан на перле. Но, почему-то, не на крутых Python/Ruby...
Потому-что перл - труъ. И зарекомендовал себя годами, а Питон и Руби только последние несколько лет выруливают. Тем более ЖЖ - очень большая распределённая система здесь для перла есть куча наработок.
>> Я тебе про другое толкую. Мне на пхп пришлось писать в полтора
раза больше кода.
> Возможно... Но у меня-то кода столько же! И ты ниасилил ;)
Ты ври но не перевирай. Я не говорил что код формы занимает больше,
он практически такой же. Я говорю про реализацию работы этой формы.
Потому что если ты говоришь про реализацию, то ты не знаешь сколько
она у меня заняла соответственно "Но у меня-то кода столько же!"
безпочвенно.
> Это происходит из-за пробелов в знаниях, и не является спецификой
php.
Это касается возможностей, которые предоставляет язык. И набор этих
возможностей меня уже не устраивает. Я хочу больше возможностей. И
Руби их дает. Что касается своего владения языком пхп, могу сказать,
что знаю его много лучше чем многие из тех, кто его защищал в этом
топике. И если ты хочешь, можешь показать мне обратное.
>> Потом в синтаксисе нету многих приятных вещей.
> Тема не раскрыта, сильно влияют личные пристрастия и
способности к обучению.
Ладно, давай попытаемся ее раскрыть. Я пишу особенности Руби вс ПХП.
И даже сразу даю решение. Ты можешь потом меня поправить или вставить
конкретный коммент. В свою очередь ты можешь написать, чего нету в
Руби. И привести соответствующий код на ПХП. Годится? Ну тогда, если
не боишься я начинаю.
Сначала по синтаксическим конструкциям.
1) Хвостовые if, else, unless, while.
PHP:
if (!empty($string)) {
return $string;
}
Ruby:
return string unless string.empty?
2) switch vs case
PHP:
switch ($test) {
case 1: $test = 'odin';
break;
case 2: $test = 'dva';
break;
default $test = 'hz';
}
RUBY:
test = case (test)
when 1: 'odi'
when 2: 'dva'
else 'hz'
end
Кроме того case позволяет проверять в диапазанах:
1..100, 2..300 и т.п., а также ставить в ветки вен нормальные
условия. На пхп придется писать if-elseif-else. Кроме того, отметьте,
что нет избыточных точек-с-запятой.
Это только начало, после ответа я продолжу. Все нытье по поводу
нечитаемости и прочего засчитывается за слив. Я использую эти
конструкция и легко их читаю и сопровождаю свой код.
>1..100, 2..300 и т.п., а также ставить в ветки вен нормальные условия. На пхп придется писать if-elseif-else. Кроме того, отметьте, что нет избыточных точек-с-запятой.
Покажите мне дебила, который будет if elseif else работать с таким количеством ифов )) Неужели вы так делаете?!?!
> Как-же так без кода, а то что ты привёл уже не код?
Это код, аналогичный представленному для RoR. Сопоставимый по размерам
и по функциональности. IMHO лучше читаемый и прри этом несущий большую
смысловую нагрузку.
> SQL один фиг меньше бы занял.
Что-что? Я не ослышался? Вы тот SQL один раз собрались использовать?
> мне в этих QuickForm Не нравиться (А верней это огромный просчёт проектирования) то что данные о предстваление (например о количестве строк и столбцов textarea) задаются в моделе - это очень не хорошо.
Согласен отчасти... Нет чистоты. Но во-первых, никто не заставляет
жёстко определять размер строк/колонок. Вместо этого можно определять
имя класса CSS. Во-вторых, этот "просчёт" вовсе не так уж плох на
практике, и используется так:
define('TEXTAREA_COLS', foo);
define('TEXTAREA_ROWS', bar);
Пишите эти две строчки в конфигурационный файл, а далее все формы их
используют.
Пока что кроме неаргументированного блеяния и предложениям о суициде я не услышал ни слова. Повторюсь, мы сравниваем пока что синтаксические возможности языков PHP & Ruby. Если вы можете предложить лучшее решение на ПХП, добро пожаловать пишите.
Если вы хотите указать, что-то вам не нравится, я прошу конретные доводы, а не очередной слив.
> И мой код даёт ту же функциональность. Список с разбивкой на странички делает DB_Datagrid, построенный на шаблонах Smarty или Flexy на выбор. Что ещё на ваш взгляд есть такого в RoR, чего нельзя или тяжело сделать в php средствами библиотеки pear? Пока что все ваши аргументы рассыпаются в мелкую труху.
1. Но это тоже дополнительный код
2. То определение которое заложено в QuickForm будет дублироваться в ОРМ. Если её использовать, а если не использовать - то вообще будет наамного больше кода чем без неё. А в Рельсах это уже всё интерировано с ОРМ.
3. Все ОРМ, включая то что была приведена не дотягивают до ActiveRecord по функциональности и динамичности, ни тем более по выразительности.
4. Я уже приводил довод про ужасное совмещение представления и модели...
>Пока что кроме неаргументированного блеяния и предложениям о суициде я не услышал ни слова. Повторюсь, мы сравниваем пока что синтаксические возможности языков PHP & Ruby. Если вы можете предложить лучшее решение на ПХП, добро пожаловать пишите.
До сих пор веришь, что язык становится лучше благодаря синтаксису? :)