Здесь показаны различия между двумя версиями данной страницы.
| Следущая версия | Предыдущая версия | ||
|
eaze:автозагрузка_классов [2013/02/12 23:19] sergeyfast создано |
eaze:автозагрузка_классов [2013/02/12 23:24] (текущий) sergeyfast [Режим с компиляцией пакетов] |
||
|---|---|---|---|
| Строка 14: | Строка 14: | ||
| * [[eaze:actions.xml|<Project>.<Package>.xml]] | * [[eaze:actions.xml|<Project>.<Package>.xml]] | ||
| - | * Правило именования файлов: Имя класса = Имя файла.php. | + | * Правило именования файлов: Имя файла = Имя класса.php. |
| * Использование неймспейсов допускается только в {}. | * Использование неймспейсов допускается только в {}. | ||
| Строка 50: | Строка 50: | ||
| ==== Обычный режим ==== | ==== Обычный режим ==== | ||
| - | При каждом обращении Package.php строит карту классов, расположенных в ''lib/*/* '' (кроме actions) и далее при любом обращении к классу, который не загружен, происходит include этого класса. | + | При каждом обращении Package.php строит карту классов, расположенных в ''lib/*/* '' (кроме actions), и при любом обращении к классу, который не загружен, происходит include этого класса. |
| ==== Режим с компиляцией пакетов ==== | ==== Режим с компиляцией пакетов ==== | ||
| В этом режиме файлы в папке ''cache'' разделены не по пакетам, а по uri. Есть ''package_system.php'', в котором находятся классы до момента вызова функции ''Package::BeginUri( $uri )'', и ''package_md5(uri).php'', где находятся все классы, которые используются после BeginUri (вызывается в Page.php). Таким образом мы загружаем только те классы, которые реально используются на странице. | В этом режиме файлы в папке ''cache'' разделены не по пакетам, а по uri. Есть ''package_system.php'', в котором находятся классы до момента вызова функции ''Package::BeginUri( $uri )'', и ''package_md5(uri).php'', где находятся все классы, которые используются после BeginUri (вызывается в Page.php). Таким образом мы загружаем только те классы, которые реально используются на странице. | ||
| + | |||
| + | |||
| Файл ''cache/compiled.eaze'' отвечает за сброс кэша. Файл ''cache/classmap.json'' отвечает за карту используемых классов (создается в процессе работы). | Файл ''cache/compiled.eaze'' отвечает за сброс кэша. Файл ''cache/classmap.json'' отвечает за карту используемых классов (создается в процессе работы). | ||