Алексей Гальченко
207 сообщений
#13 лет назад
Я так понял слово шаблоны создателям Битрикс не ведомо.


я так понял, что самый лучший шаблон для Вас - это файл с расширением html, в котором нет даже js, и всё набивается "программистом" и, боюсь даже подумать, что кто - то другой сможет изменить Ваш шаблон...
Вадим Т.
3240 сообщений
#13 лет назад
alex_gall, Вы привели кусок кода, тем самым показав основной недостаток Битрикса. Этот код ужасен.

Глядя на такой код, мне жаль спецов, когда их попросят "немного изменить внешний вид". Возможно Вам это удобно, Вы привыкли ковыряться в этой ээ... мешанине HTML кода и PHP конструкций. Но если бы Вы рассмотрели альтернативные варианты работы с нормальными темплейтными движками, потом обратно бы уже не вернулись.

Лирическое отступление. Почему верстка считается черной работой? Потому что, например, если Вы создали дизайнерский темплейт Вы можете его использовать в портфолио. Если Вы программист, и написали некий код - этот код можно повторно использовать в других проектах, улучшать. Верстка же - просто трата времени, хотя и оплачиваемая, и даваемая некий навык.

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

Да, я понимаю, ковырять этот битриксовский код может быть выгодно, и можно брать студентов которым это поручать. Бизнес есть бизнес. Но пожалуйста, не стоит ставить этот код (и сам битрикс) за образец триумфа прогресса. Навоз тоже разгребать и продавать может быть выгодно, это хорошее удобрение.
Алексей Гальченко
207 сообщений
#13 лет назад
tvv,

покажите код, который Вы считаете идеальным... И пусть та система по функционалу будет такой же как битрикс.
Алексей Б.
897 сообщений
#13 лет назад
Цитата ("alex_gall"):
Я так понял слово шаблоны создателям Битрикс не ведомо.


я так понял, что самый лучший шаблон для Вас - это файл с расширением html, в котором нет даже js, и всё набивается "программистом" и, боюсь даже подумать, что кто - то другой сможет изменить Ваш шаблон...

Мне кажется что вы не понимаете понятия Шаблон.
Алексей Гальченко
207 сообщений
#13 лет назад
lyoxa, не...я понимаю, что такое шаблон ...в своё время я работал с сабдримером, и могу сказать, что его шаблоны наиболее простые, чем даже джумлы, но эти системы не выполняют столько функций, как это делает бус...
Алексей Б.
897 сообщений
#13 лет назад
Цитата ("rei"):
Оффтопик. Меня не особо интересует тема про битрикс, но тема о студиях меня задела.

lyoxa, AxRv, а вы вообще какие студии можете назвать-то? Я уже не говорю про сотню. Хотя бы десятка полтара?

Ну Лебедев, его же Телетайп, Бюро Пирогова, Акстис и подзабытая студия Болотова (bolotov.ru), и богом забытая студия Кирсанова. И все, да?

Всякие там местные конторы с оборотом в 10-20 тыс. в месяц рассматривать не будем.

Вы же даже не интересуетесь наверняка студиями. И скажите, а как еще можно судить о студии, как не о прибыли? Вот вам пожалуйста, рейтинг самых прибыльных студий.

Будем судить по качеству? Это нереально, т.к. у каждой студии свой стиль и своя специализация (сравним Лебедева и Пирогова).
Будем судить по клиентам? Вот, например у redbee Сони и Джилет -- клиенты. Известные бренды, не так ли?

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


Бред какой-то.
В данном случае я на 99% уверен в том, что перечень студий в Топ'е есть промоут "промоутеров" сабжа.
Антон Раздоров
106 сообщений
#13 лет назад
я так понял, что самый лучший шаблон для Вас - это файл с расширением html, в котором нет даже js, и всё набивается "программистом" и, боюсь даже подумать, что кто - то другой сможет изменить Ваш шаблон...

нет для меня лучший шаблон это или tpl или dtml.
Вадим Т.
3240 сообщений
#13 лет назад
Цитата ("alex_gall"):
покажите код, который Вы считаете идеальным... И пусть та система по функционалу будет такой же как битрикс.


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

В этой теме форума мы обсуждаем битрикс. Поэтому разбор кода других систем, и трата времени на это, является выходом за рамки темы этого топика. Если Вы не знаете других систем с подобным набором функционала, но с более качественным кодом, еще не значит что таких систем нет. А пока, пожалуйста, давайте продолжать обсуждать битрикс. Другие системы обсудим в других топиках.

Только глобальный рефакторинг кода и переход на нормальные шаблоны сделает битрикс профессиональным продуктом. Пока что это лишь набор ученического кода, который хороший маркетинг впаривает нетехническим заказчикам.
Николай Соловьев
710 сообщений
#13 лет назад
Цитата ("tvv"):
В этой теме форума мы обсуждаем битрикс. Поэтому разбор кода других систем, и трата времени на это, является выходом за рамки темы этого топика.

Не могли бы вы и правда привести пример систем, относительно которых вы говорите, что Битрикс - плохо. А то получается, что вы сравниваете качество кода Битрикс с пустотой. Не все в этом топике работали с чем-то лучше.
Николай Соловьев
710 сообщений
#13 лет назад
SmartDesign, код может и понятный. Но разделения логики и представления и правда нету.
Вадим Т.
3240 сообщений
#13 лет назад
Я сравниваю не с пустотой, а указываю на здравый смысл и устоявшиеся стабильные технологические решения. Я надеюсь, Вы понимаете что такое хороший программный код как таковой, обязательно ли нужны примеры?

Повторюсь, сейчас мы говорим о качестве кода. И при этом неважно какая именно это система, и какой у нее набор функциональности. Мы говорим именно о исходном PHP коде, то есть мы говорим друг с другом как профессионалы. Посмотрите как написаны например топовые модули PEAR, посмотрите как написан PRADO. Хотите что-то покрупнее? Посмотрите на Xaraya. Хотите магазин с кучей фич? Посмотрите на Koobi (кстати далеко не идеал, тоже много минусов, но коду битрикса до него очень далеко). Примеров - сотни.

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

Далее, я могу назвать несколько продуктов такого же класса как и битрикс, со своими недостатками, но с более лучшим кодом. Но я не хочу их рекламировать, как это делает alex_gall с битриксом (я делаю вывод, что он, возможно или один из дилеров битрикса, или участник их партнерской программы, или что-то типа этого).
Андрей Халецкий
3563 сообщения
#13 лет назад
SolNikolay, простите, где вы видите обработку или получение данных. Только представление. Конечно тегами оно попроще =), но кушает больше памяти и медленнее.
Станислав Малкин
1410 сообщений
#13 лет назад
Цитата ("SmartDesign"):
SolNikolay, простите, где вы видите обработку или получение данных. Только представление. Конечно тегами оно попроще =), но кушает больше памяти и медленнее.


Потенциально тут:

<?=GetMessage("IBLOCK_FIELD_".$code)?>


Да и вообще, Вас не смущают такие вещи, как теги <small> и стили приямо в шаблоне по типу style="clear: both" ?

Я не говорю уже об отступах (будем считать, что квотинг веблансера не позволяет выводить форматированный код, хотя в оригинале я тоже не заметил нормальной структурированности) и логическом отделении блоков вывода информации..
Андрей Халецкий
3563 сообщения
#13 лет назад
ArtLab, =)
Я могу ошибаться, но я не вижу тут обработки данных, только вывод.
Теги и стили это вопрос к верстальщику, а не к коду шаблона, отступы (TABы) к сожалению действительно зарезаются при вставке.

Я не защищаю битрикс, просто непонятно за что наехали на пример.
Станислав Малкин
1410 сообщений
#13 лет назад
Цитата ("SmartDesign"):
ArtLab, =)
Я могу ошибаться, но я не вижу тут обработки данных, только вывод.
Теги и стили это вопрос к верстальщику, а не к коду шаблона, отступы (TABы) к сожалению действительно зарезаются при вставке.

Я не защищаю битрикс, просто непонятно за что наехали на пример.


Верстальщик думаете в этом всем разберется теперь уже? Если Вы не понимаете почему "наехали", то посмотрите вот такой код, пожалуйста:

<?php
class Bar {
private static $ob1 = NULL;
private static $buffer = NULL;

public static function load_class() {
if(self::$ob1 == NULL) {
$class = __CLASS__;
self::$ob1 = new $class();
}

return(self::$ob1);
}

public function get_object() {
if(self::$ob1 == NULL) {
self::load_class();
} else {
return(self::$ob1);
}
}

public function load_function($function) {
self::$function();
}

public function set_arg($arg = NULL) {
self::$buffer = $arg;
return(self::get_object());
}

public function myPrint() {
if(self::$buffer == NULL) {
echo('Nothing to do, exiting!');
exit(1);
} else {
echo(self::$buffer);
}
}
}

Bar::load_class()->get_object()->set_arg('Hello, World!')->load_function('myPrint');
?>


По Вашей логике - тут тоже нет ничего такого, но на самом деле это отвратительный код, скажу я Вам..
Андрей Халецкий
3563 сообщения
#13 лет назад
ArtLab, Простите,
По Вашей логике - тут тоже нет ничего такого
постарайтесь не выдавать свои слова за мои мысли, или, по крайней мере, покажите логику этого утверждения.
Как я писал, обработки данных в шаблоне не было. Обработка данных и представление разделены. Не более и не менее.

Приведенный код не имеет никакого отношения к примеру за который я заступился. Этот защищать не буду =)

Что касается верстальщика, действительно, разобраться в смеси PHP и HTML кода без соответствующего опыта - достаточно сложно. Для работы с этими шаблонами нужен человек, который знаком не только с (x)HTML и CSS, но и PHP. Но это дает прирост скорости и большую гибкость(которая ограничена только возможностями языка).

Извиняюсь если был слишком резок.
Станислав Малкин
1410 сообщений
#13 лет назад
Цитата ("SmartDesign"):
ArtLab, Простите,
По Вашей логике - тут тоже нет ничего такого
постарайтесь не выдавать свои слова за мои мысли, или, по крайней мере, покажите логику этого утверждения.


Логика в том, что и тот и тот код - ужастен.

обработки данных в шаблоне не было


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

Приведенный код не имеет никакого отношения к примеру за который я заступился. Этот защищать не буду =)


Правильно делаете.

Что касается верстальщика, действительно, разобраться в смеси PHP и HTML кода без соответствующего опыта - достаточно сложно. Для работы с этими шаблонами нужен человек, который знаком не только с (x)HTML и CSS, но и PHP. Но это дает прирост скорости и большую гибкость(которая ограничена только возможностями языка).


1. Такой человек стоит дороже иногда, чем 2 человека, каждый из которых умеет свою область, следовательно - разработчики не позаботились об экономии средств тех, кто будет делать проекты на этой платформе.
2. Далеко не факт, что такой человек захочет работать с таким кодом. Например - я бы не стал (это как пример, ни на что не претендую).

Извиняюсь если был слишком резок.


Ничего крамольного не увидел
Вадим Т.
3240 сообщений
#13 лет назад
Цитата ("SmartDesign"):
Но это дает прирост скорости и большую гибкость(которая ограничена только возможностями языка).


Вопрос. А о каком приросте скорости идет речь? Чем такое решение, где программист смешивает HTML и PHP забывая про то что есть шаблоны, быстрее чем использование самих шаблонов? Ведь есть же предкомпиляция шаблонов (при которой неявно генерируется и помещается в кеш такая же самая смесь PHP и HTML, но уже невидимо для программиста), кеширование второго уровня, и т.д. Ну обратите внимание например на то, как работает Smarty и подобные темплейтные движки.
Андрей Халецкий
3563 сообщения
#13 лет назад
tvv, действительно, прекомпиляция снимает вопрос скорости. Я не думаю, что этот вариант работает быстрее смарти с включенным кэшированием и компиляцией шаблонов. Это лучше чем обработка шаблонов с помощью str_replace() и быстрее синтаксического анализатора на PHP =). Что очень многие самописные CMS делают.

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

ArtLab, рад, что не зацепил, кто-то мог и обидется.
Оффтопик
Логика в том, что и тот и тот код - ужастен.
Это не совсем логика (связь между входными данными и результатами), это только результат преобразования.
Критерии ужасности кода у нас могут сильно различаться местами. Поэтому вы не можете пользоваться моей "логикой" (набором правил), точно так же как я вашей. Хотя это уже не имеет отношения к предмету обсуждения, но тема достаточно интересная. =)
Болатов Алибек
1090 сообщений
#13 лет назад
Цитата ("alex_gall"):
покажите код, который Вы считаете идеальным...

Даже второй phpBB на порядок более качественно и структурно оформлен.