This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
public:standarts:kod [13.10.16 в 15:49] Артем Куц |
public:standarts:kod [09.07.18 в 16:29] (current) Артем Куц |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Стандарты оформления кода ====== | + | ====== Стандарты оформления PHP кода ====== |
| - Правильное именование переменных и функций. | - Правильное именование переменных и функций. | ||
| - Имена глобальных переменных и констант должны вводиться в верхнем регистре | - Имена глобальных переменных и констант должны вводиться в верхнем регистре | ||
| Line 10: | Line 9: | ||
| - При создании модели объекта с неопределенной выборкой, например, <php>$oShopItems = Core_Entity::factory(‘shop_item’)</php> имя переменной должно быть во множественном числе с содержанием префикса o - object. При уточнении выборки и получении массива объектов <php>$aoShopItems = $oShopItems->findAll()</php> префикс должен быть ao - array of objects. При создании модели конкретного объекта имя переменной должно быть в единственном числе, например, <php>$oShopItem = Core_Entity::factory(‘shop_item’, 25)</php>. | - При создании модели объекта с неопределенной выборкой, например, <php>$oShopItems = Core_Entity::factory(‘shop_item’)</php> имя переменной должно быть во множественном числе с содержанием префикса o - object. При уточнении выборки и получении массива объектов <php>$aoShopItems = $oShopItems->findAll()</php> префикс должен быть ao - array of objects. При создании модели конкретного объекта имя переменной должно быть в единственном числе, например, <php>$oShopItem = Core_Entity::factory(‘shop_item’, 25)</php>. | ||
| - Использование пустого пространства и фигурных скобок. | - Использование пустого пространства и фигурных скобок. | ||
| - | - Чтобы усилить логическую структуру кода, следует использовать переносы строк – пустое пространство. Не бойтесь ставить переносы строк, давайте коду как можно больше свободы. | + | - Чтобы усилить логическую структуру кода, следует использовать переносы строк – пустое пространство. Не бойтесь ставить переносы строк, давайте коду как можно больше свободы, но без излишеств - двойные переносы строк делать не следует. |
| - Cледует разбивать блоки инициализации ряда переменных по логическому смыслу, например<code php> | - Cледует разбивать блоки инициализации ряда переменных по логическому смыслу, например<code php> | ||
| $name = "testname"; | $name = "testname"; | ||
| Line 50: | Line 49: | ||
| ) | ) | ||
| { | { | ||
| - | $Informationsystem_Controller_Show->addEntity( | + | $Informationsystem_Controller_Show |
| + | ->addEntity( | ||
| Core::factory('Core_Xml_Entity') | Core::factory('Core_Xml_Entity') | ||
| ->name('current_group_id') | ->name('current_group_id') | ||
| ->value(intval(Core_Page::instance()->object->group)) | ->value(intval(Core_Page::instance()->object->group)) | ||
| - | )->addEntity( | + | )->addEntity( |
| Core::factory('Core_Xml_Entity') | Core::factory('Core_Xml_Entity') | ||
| ->name('current_item_id') | ->name('current_item_id') | ||
| Line 61: | Line 61: | ||
| ); | ); | ||
| }</code> | }</code> | ||
| - | - Не используйте оператор <php>echo</php> для вывода html кода. Следует использовать закрывающие и открывающие php теги: <html><?php ?></html> | + | - Не используйте оператор <php>echo</php> для вывода HTML-кода. Следует использовать закрывающие и открывающие PHP-теги: <html><?php ?></html> |
| - Вставки кода должны быть окружены копирайтами с комментарием. Пример <code php>/** | - Вставки кода должны быть окружены копирайтами с комментарием. Пример <code php>/** | ||
| * В этой строке должен быть комментарий о том, что делает код внутри комментариев. | * В этой строке должен быть комментарий о том, что делает код внутри комментариев. | ||
| * | * | ||
| - | * @author Kuts Artem, KAD Systems (©) 2015 | + | * @author Kuts Artem, KAD Systems (©) 2017 |
| - | * @date 18-11-2015 | + | * @date 18-11-2017 |
| * Начало >> | * Начало >> | ||
| */ | */ | ||
| Line 72: | Line 72: | ||
| /** | /** | ||
| * << Конец | * << Конец | ||
| - | * @author Kuts Artem, KAD Systems (©) 2015 | + | * @author Kuts Artem, KAD Systems (©) 2017 |
| - | * @date 18-11-2015 | + | * @date 18-11-2017 |
| */</code> | */</code> | ||
| + | - Параметры методов класса указываются в порядке: входные значения, изменяемые значения, выходные значения. | ||
| + | - При написании кода допускается использовать языковые конструкции совместимые с версией интерпретатора 5.2.2+, такая совместимость [[https://www.hostcms.ru/hostcms/system-requirements/|заявлена в требованиях]] к последней версии HostCMS, и такую совместимость необходимо поддерживать в своем коде. | ||