Как стать автором
Обновить

Комментарии 11

А когда проект перейдёт по наследству - "ебитесь как хотите ещё и с другими фрэймфорками внутри фрэймворка", тут даже писать про "недостатки" не надо.

Где вы заметили яйцо в яйце?


Symfony/EventDispatcher - фреймворк ?
или может Twig - фреймворк ?

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

Symfony/EventDispatcher - фреймворк ?

Эвент диспетчер есть стандартный битриксовый, который вполне все потребности автора покрывает. Зачем нужно было тащить стороний?

Twig - фреймворк

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

Но мы все знаем, к чему приводит привычка юзать init.php

Все мы это кто, говнокодеры? В init.php максимум, что нужно дак это вызывать 'Loader::includeModule', а все остальное уже размещать непосредственно в include.php модуля и/или доп файлах если include.php разрастается.

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

А где еще вы их собираетесь использовать? Inline на публичных или админских страницах? Использование компонентов в целом хороший подход, когда у вас конкретный виджет (кусок кода) обособлен.

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

Т.е. в целом вам лень написать 1 класс с двумя методами: 'addEventListener' которая добавит в массив колбэк и 'triggerEvent' которая прочитает из массива и выполнит колбэк?

Да, действительно, лень невообразимая, а заморочек и подавно не видно.

Хотя бы стоило добавить в конце листинг куска кода с использования Twig в компоненте

Все мы это кто, говнокодеры? В init.php максимум, что нужно дак это вызывать 'Loader::includeModule', а все остальное уже размещать непосредственно в include.php модуля и/или доп файлах если include.php разрастается.

Да-да, именно вынесения всей каши из init.php в отдельный файл и инклудить его обратно в init - это тру ?

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

Да-да, именно вынесения всей каши из init.php в отдельный файл и инклудить его обратно в init - это тру ?

Вы наверное сами не понимаете о чем говорите:

# init.php
<?php

\Bitrix\Main\Loader::includeModule('module.name');

?>

# module.name/include.php
<?php

// подписка на события
// инциализация DI

?>

И в чем тут проблема? А если модулей несколько, то наверное вместо очередного инклуда модуля (и группирования кода по контексту a.k.a модулю), лучше конечно выносить это все в init.php, естественно (сарказм).

Ах да, наверное вы еще посоветуете не выносить обработчики событий в отдельный классы/функции, а прям в анонимной функции фигачить в init.php?

Хотелось бы конечно посмотреть на ваши проекты с вашей "хорошей практикой". Говнище редкостное наверное :)

От композита придётся отказаться, в таком случае. Но лучше отказаться от Битрикса и работать с symfony или laravel.

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

Но мы обычно разрабатываем для коробки Битрикс24, кроме того, не всем компонентам бывает нужен композит

Конечно же импортозамещением. Не на маркетинг ведутся, ага.

И на БУС и на Б24 можно поднимать адекватные проекты, если конечно ручки-не-криворучки, но видимо в этом случае как раз они.

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории