Skip to content

PackageSystem

Dmitriy Zayceff edited this page Feb 22, 2017 · 23 revisions

Система пакетов

⚠️ Внимание, в данной статье описывается механизм, который находится в разработке и появится лишь в DevelNext 16.3 версии.

Система пакетов в jphp позволяет объединить несколько классов, функций и констант в один пакет. Затем, пакет можно легко подключить в скрипте через use <название пакета>, благодаря чему в скрипте станут доступны все классы, функции и константы пакета.

ℹ️ Не стоит путать пакет jphp с пакетами расширений DevelNext. Пакет в jphp можно создать вне всякого расширения DevelNext. Это является новой возможностью языка php в рамках jphp.


Оглавление


### Структура пакета Пакет в jphp состоит из списка классов, функций и констант. Он имеет короткое название, которое всегда начинается с маленькой буквой. В итоге в пакете мы имеем: - Имена классов - Имена функций - Имена констант

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


### Автозагрузка пакетов

JPHP из коробки предоставляет механизм автозагрузки пакетов по аналогии с автозагрузкой классов. Реализуется он через класс php\lang\PackageLoader и в движке для develnext реализован свой загрузчик пакетов FrameworkPackageLoader.

Clone this wiki locally