zend framework 2 подчеркивает частное
-
04-10-2019 - |
Вопрос
Будут ли Zend Framework 2 продолжать ставить подчеркивание перед частными членами и методами классов? например:
class blah {
private $_name;
private function _doSomethingToName()
{
}
}
Я вижу, что они все еще там в разработке Dev ZF2.
Решение
Наверное Да, хорошо, чтобы Опрос:
В настоящее время 381 ответов:
- 57% голоса «Да» (удалить подчеркивание)
- 38% голоса «нет» (чтобы сохранить подчеркивание)
- 4% голоса «нет мнения»
Другие советы
От стандарта кодирования ZF2
Функции и методы
Имена функций должны содержать только буквенно-цифровые символы. Подчеркивает не допускается. Числа разрешены в именах функций, но обескуражены. ... Для методов на объектах, которые объявлены с помощью «частного» или «защищенного» модификатора, первый символ имени метода может быть подчеркиванием. Это единственное приемлемое применение подчеркивания в имени метода и обескуражено (поскольку он делает рефакторинг к общественной видимости более сложным). Методы, объявленные «публики», не должны содержать подчеркивание.
http://framework.zend.com/wiki/display/zfdev2/coding+standards.
Да и почему они не должны? Это конвенция, чтобы сделать это.
Это конвенция на других объектно-ориентированных языках тоже.
Проверьте эти два рекомендация по соглашению с кодом:
Но все и все это должно быть командной конвенцией, которая, вероятно, как это для Zend. Я считаю, что эти комиссионные конвенции должны использоваться для разъяснения и последовательности при записи кода. Для меня ZEND Использование префикса подчеркивания для частных членов является отличным временем, особенно когда я не очень знаком с классом.
Я недавно удивлялся по этому вопросу и сделал поиск по всей ZendFramework-2.1.4, чтобы получить окончательный ответ. Конвенция подчеркивания, по-видимому, больше не будет использоваться для переменных. Нет даже одной частной или защищенной переменной декларации во всем проекте, который начинается с одного подчеркивания. В следующих трех файлах есть небольшое количество переменных, которые начинаются с двух подчеркиваний, но это.
Zendframework-2.1.4 библиотека zend view renderer phprenderer.php zendframework-2.1.4 library zend view renderer consolerderer.php zendframework-2.1.4 Библиотека zend stdlib bistanceoptions .php.php
По крайней мере, один из этих файлов содержит следующий комментарий:
Примечание. Все частные переменные в этом классе префиксированы с «__». Это следует * отметить их как часть внутреннего внедрения, и, таким образом, предотвращать конфликт * с переменными, введенными в рендерер.
Что касается методов, которые я смог найти три файла, которые используют «частную функцию _» и 89 файлов, которые используют «защищенную функцию _», чтобы объявить методы. Также были также три файла, используя «частную статическую функцию _» и семь файлов, использующих «защищенную статическую функцию _». Это очень небольшое меньшинство общего количества деклараций методов в проекте.
Похоже, что эта конвенция мертва или умирает в пределах Zend Framework 2.
Редактировать: Похоже, что эти два участка стандартов Codign ZF2 устанавливают это четко.
http://framework.zend.com/wiki/display/zfdev2/coding+standardards#codingstandards-variables. http://framework.zend.com/wiki/display/zfdev2/coding+standards#codingstandards-functionsandmethods.
Переменные
Переменные имена должны содержать только буквенно-цифровые символы. Подчеркивает не допускается. Числа разрешены в именах переменной, но в большинстве случаев обескуражены.
Для переменных, которые объявлены частной или защищенной видимостью, первый символ имени переменной может быть одним подчеркиванием. Это единственное приемлемое применение подчеркивания в имени переменной и обескуражена (поскольку он делает рефакторинг к общественной видимости более сложным).
Функции и методы
Имена функций должны содержать только буквенно-цифровые символы. Подчеркивает не допускается. Числа разрешены в именах функций, но обескуражены.
Имена функций всегда должны начинаться с строчной буквы. Когда имя функции состоит из более чем одного слова, первая буква каждого нового слова должна быть заглавной. Это обычно называется форматирование «камерзака».