Организация занятий - лучшая практика?
Быстрый вопрос о наилучшей практике с PHP-классами. Я видел, как люди используют такие имена файлов, как something.class.php
организовать свои занятия во внешних файлах.
Поэтому лучше всего иметь один файл на класс или несколько классов на файл.
На данный момент я пишу RPG и у меня есть один class_lib.php
файл. В настоящее время у меня есть только классы, связанные с символами, и перед тем, как продолжить, я хотел бы узнать, лучше ли хранить классы в файлах, иметь все классы в одном файле или хранить каждый класс в своем собственном файле.
Каковы преимущества / недостатки каждого подхода?
Сделал этот CW, так как он может не иметь однозначного ответа
5 ответов
Их плюсы и минусы обоих подходов. Разделение классов на отдельные файлы позволяет вам мгновенно узнать, какой файл нужно изменить, если вам нужно обновить класс, и сохранить всю логику, связанную с этим классом, в одном месте. Это также полезно с точки зрения хранилища исходного кода для отдельных файлов. Это увеличивает объем загрузки, чтобы включить тонну файлов, однако это, скорее всего, незначительно. Другим недостатком является необходимость открывать множество файлов в процессе кодирования, и навигация может быть болезненной, если вы решите использовать папки в структуре.
Наличие связанных классов в одном и том же файле более удобно, чем что-либо другое, и может быть непонятно, какой файл содержит класс, который нужно изменить.
Если ваш проект не будет очень большим, то, скорее всего, вам решать, как вы хотите его организовать. Но подумайте об этом с точки зрения "Если я не коснусь кода через 6 месяцев, я вспомню, куда идти, чтобы отредактировать этот класс?"
Хранение классов в отдельных файлах позволяет выполнять автозагрузку. Вполне возможно, что это может помочь с производительностью, если некоторые классы - которые вы бы в противном случае поместили в один большой файл - использовались редко (примечание, это всего лишь слепое предположение. Сама автозагрузка может повлечь за собой снижение производительности).
Один файл на класс, с автозагрузкой, чтобы включать их только тогда, когда они необходимы
Это зависит от вкуса и размеров ваших занятий. Разделение чисто для организации. Итак, если вы думаете, что будет проще в одном файле или одном классе на файл, это зависит от вас.
Преимущества: легче найти то, что вы хотите. Меньше прокрутки!
Недостатки: постоянное переключение между файлами. Может раздражать при создании новых классов на лету.
Один класс, один файл. ИМО, это проще с организационной точки зрения.
Другие советы:
- Держите уровни наследования и список параметров на абсолютном минимуме. Более 5 или 6 становится слишком сложным
- Используйте самые ограничивающие квалификаторы области