Я предпочитаю, чтобы стандарты кодирования были логичными. Это мой аргумент в пользу того, почему следующий набор стандартов - нет.
Мне нужно знать одну из двух вещей: (1) почему я ошибаюсь или (2) как убедить мою команду изменить их.
camelCase: функции, имена классов, методы и переменные должны быть camelCase.
- Трудно различать переменные и классы
- Переход к строчным/подчеркнутым переменным/функциям PHP и классам UpperCamelCase
Пример:
$customerServiceBillingInstance = new customerServiceBillingInstance(); // theirs
$customer_service_billing_instance = new CustomerServiceBillingInstance();
Функции/методы должны всегда возвращать значение (и возвращаемые значения должны всегда сохраняться).
Это отображается на сотнях наших страниц php:
$equipmentList = new equipmentList();
$success = $equipmentList->loadFromDatabase(true, '');
$success = $equipmentList->setCustomerList();
$success = $equipmentList->setServerList();
$success = $equipmentList->setObjectList();
$success = $equipmentList->setOwnerList();
$success = $equipmentList->setAccessList();
Возвращаемое значение редко используется, но всегда сохраняется. Он поощряет использование копирования и вставки.
Нет статических методов
В кодовой базе отображаются тысячи строк, таких как:
$equipmentList = new equipmentList();
$success = $equipmentList->loadFromDatabase();
Я бы предпочел:
$equipmentList = equipmentList::load();
Какая причина заключается в том, чтобы не использовать статические методы или свойства? Не являются ли статические методы ответственными за логику, не связанную с экземпляром? Как инициализация или заполнение нового экземпляра?
Ваш код не является ООП, если все не возвращает объект
Там кусок кода, который выполняет запрос, проверяет его на несколько путей для ошибок, а затем обрабатывает результирующий массив. Он повторяется (копируется + вставлен) несколько раз, поэтому я помещаю его в базовый класс. Тогда мне сказали, что массив возвращает не ООП.
Как вы защищаете эти практики? Мне действительно нужно знать. Я чувствую, что беру сумасшедшие таблетки.
Если вы не можете защитить их,, как вы убедите непреклонного автора, их нужно изменить?