Выделение памяти в PHP ООП?
1) При создании экземпляра new Class() в память забираются все его методы - чем больше методов тем больше памяти надо, или там память на метод в момент его вызова метода выделяется?
При подключении ЛЮБОГО php файла производится лексический анализ, лексер генерирует из исходного кода программы набор токенов, из которых строится синтаксические дерево. Отсюда следует то что, чем больше кода, тем больше памяти выделяется.
Само по себе создание каждого последующего объекта также несет затраты.Значит ли всё это что наиболее нагруженную но простую часть системы лучше вынести в отдельный компактный класс содержащий только необходимое для её функционирования?
Вы экономите на спичках. Хорошая архитектура важнее сэкономленной микросекунды и килобайта памяти.
Никого не слушайте!
Динамическая загрузка дочерних классов и методов, а также их повторное использование (клонирование и реинициализацию вместо new ClassName() ) - экономит как время исполнения, так и память.
Скорость работы - увеличивается так, что становится заметна невооружённым глазом.
По "зёрнышку" на каждом этапе - можно выиграть ускорение до 4x-5x от прежней скорости.
Главное - начинайте с архитектуры!