Рекомендации: где разместить необходимые файлы

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

Проблема в том, что эти файлы использовались в качестве свалки для любых функций, которые требуются для модулей / приложений, и в результате они имеют размер> 3k строк, а вверху у них около 50 объявлений require_once!

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

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

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

Спасибо,

Флунга

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
0
400
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Взгляните на функция автозагрузки. это сократит все ваши включения до того, что требуется, когда это необходимо.

Спасибо большое. Это именно то, что мне нужно, и поскольку помощники возникли из реализации PHP4, это было то, с чем я застрял тогда, но не сейчас. :) Еще раз спасибо

flungabunga 07.10.2008 16:41

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

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

Я, конечно, не знаю, зачем «требовать» код, который вы не собираетесь использовать на странице.

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

flungabunga 07.10.2008 16:45

Другие вопросы по теме