208 похожих чатов

Кто-Нибудь применяет ООП в result_modifier.php? Что-то по типу такого: $arResult =

new NewsList(&$arResult, $arParams);

Не смог на Гитхабе найти примеры.

Й

16 ответов

16 просмотров

ну да. вай нат

$arResult по ссылке конструктору, и это все в $arResult

W.-Blazkowicz Автор вопроса
Roma
$arResult по ссылке конструктору, и это все в $arR...

ну, вот я так и подумал)) но NewsList должен наследоваться от какого-то abstract. Есть примеры?

W. Blazkowicz
ну, вот я так и подумал)) но NewsList должен насле...

этот NewsList похож на какой-то кастомный класс

Roma
$arResult по ссылке конструктору, и это все в $arR...

короче, не нужно так делать) извращение, имхо

имхо если по ссылке - и возвращай по ссылке, зачем ответ?

W.-Blazkowicz Автор вопроса
Roma
screenshot короче, не нужно так делать) извращение, имхо

конечно, кастомный. Я его для примера привел. Да, конечно, будет рекурсия - это опечатка) Концепция понятна: обрабатывать $arResult в каком-то классе по ссылке. Чтобы избавиться от функционального подхода в result_modifier.php. Но примеров я найти не могу.

W. Blazkowicz
конечно, кастомный. Я его для примера привел. Да, ...

Если ваша механика требует ООП подхода в result_modifier, то по-моему вам проще сделать компонент.

W. Blazkowicz
конечно, кастомный. Я его для примера привел. Да, ...

https://pastebin.com/ACWqWWfi вот вам пример, но толку)

W.-Blazkowicz Автор вопроса
Andrei Nikolaev
Если ваша механика требует ООП подхода в result_mo...

да не то, что требует. Просто result_modifier.php на тысячу строк поддерживать довольно тяжело

W. Blazkowicz
да не то, что требует. Просто result_modifier.php ...

Мне кажется, что как только он перевалил за ~200 строчек оформленных по style guide bitrix, то в вашем случае компонент делает вообще не то что он должен.

Andrei Nikolaev
Мне кажется, что как только он перевалил за ~200 с...

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

Roma
у нас было по 700 строк в catalog.element, наприме...

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

Roma
https://pastebin.com/ACWqWWfi вот вам пример, но ...

но вот это - совсем не то) это, на самом деле, оверхед. оформляем массив в обьект, а толку? ну, теоретически, может помочь в случае с catalog.section, catalog.top итп

W.-Blazkowicz Автор вопроса
Roma
https://pastebin.com/ACWqWWfi вот вам пример, но ...

На правах некропостинга. Можешь подробнее свою позицию обозначить? Имеешь в виду, что нужно какой-нибудь паттерн (вроде Command) реализовать и использовать в result_modifier.php вместо твоего примера? Речь о том, как избавится от процедурного стиля в result_modifier.php. Сейчас использую анонимные функции, что тоже не удобно

W. Blazkowicz
На правах некропостинга. Можешь подробнее свою п...

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

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта