Вы находитесь на странице: 1из 2

Features Business Explore Pricing This repository Search Sign in or Sign up

jphp-compiler / develnext Wa tch 15 Sta r 35 Fo rk 18

Code Issues 8 Pull requests 0 Projects 3 Wiki Pulse Graphs

ClassLoading
Dmitriy Zayceff edited this page on 19 Feb · 14 revisions

Автозагрузка классов Pages 5 9

DevelNext и JPHP по-умолчанию используют автозагрузку классов, используя имена классов.


Автозагрузка, это способ автоматически подключать файлы с классами по мере их PHP API
использования. Это означает, что класс не будет загружен в систему до тех пор, пока он не
Описание стандартных
будет где-то использован в коде.
классов и функций php.

--
API
Название классов
UXNode, UXList, UXImage,
Механизм загрузки
UXColor, UXScreen, UXTooltip,
Ресурсы и протокол res:// UXFont, В с е к лас с ы.

Смотрите также
F.A.Q.
IDE, Среда
Название классов
Переход с DevelStudio

Название классов в php обычно состоит из namespace и короткого названия. Для примера Переход с GameMaker
Язык PHP
разберем класс php\gui\UXButton .
Файловая система
Дата и время
<?php
UI, Дизайн
namespace php\gui;
JavaFX CSS

class UXButton { Игры и развлечения


Интернет и сети
} Аудио и видео
Системные утилиты
Лаунчеры и оболочки
Здесь мы видим класс UXButton, который объявляется внутри пространства имен php\gui . По
SQL, Базы данных
этим критериям формируется полное название класса, т.е. php\gui + UXButton и выход
Разное
php\gui\UXButton .

Символ \ в названиях является частью синтаксиса php и является символом Clone this wiki locally
разделителя в namespace .
https://github.com/jphp-compiler/develnext

-- C l o n e i n D e s kto p

Механизм загрузки

В php есть стандартный механизм автоподгрузки классов, см. здесь. С помощью этого
механизма, в DevelNext реализована следующая схема:

1. Встречается класс php\gui\UXButton .


2. Если класс еще не существует, срабатывает загрузчик.
3. Загрузчику передается полное название класса, т.е. php\gui\UXButton .
4. По названию класса загрузчик формирует путь к php файлу с классом.
5. DevelNext его сформирует как res://php/gui/UXButton.php , файл из ресурсов.
6. Происходит include "res://php/gui/UXButton.php" .

--

Ресурсы и протокол res://


Протокол res:// - это системный протокол внутри JPHP и DevelNext, он помогает обращаться
к любым файлам из ресурсных источников. Если вы разрабатываете проект в DevelNext, то
ресурсной папкой будет <путь к проекту>/src . После компиляции, все файлы внутри src
попадают в исполняемый файл и их по прежнему можно читать по протоколу res:// , хоть они
уже и находятся внутри вашего приложения.

--

Смотрите также

Посмотрите альтернативный обзор этой возможности в статье нашего активного пользователя


https://tssaltan.ru/969.develnext-подключение-сторонних-классов/.

Вернуться в начало

develnext.org (c) 2017

© 2017 GitHub, Inc. Terms Privacy Security Status Help Contact GitHub API Training Shop Blog About

Оценить