- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
class C
{
...
static function ModulesList()
{
global $config;
return $config;
}
...
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+163
class C
{
...
static function ModulesList()
{
global $config;
return $config;
}
...
}
ООП в действии
{
...
static function M() {
...
}
...
}
А с нотацией класса это больше похоже на попытку "сокрытия реализации". Возможно старый код (не ООП) поддерживает глобальную переменную, а новый код (ООП) получает статический интерфейс, который передаёт копию переменной, но скрывает от клиента само её существование (клиенту предписано использовать статический метод).
Если старый код (не ООП) в какой-то момент просто отпадёт (всё не поддерживают), то достаточно будет объявить переменную $config закрытым членом класса и переписать две-три строчки, а новый код будет продолжать обращаться к ней через статический интерфейс.
Без описания конкретной задачи программы подобная запись подразумевает трактовку...
Надо аккуратно пояснить в комментарии, что программа уже лишилась не ООП части, а люди оставили сопрягающий код. Всем не только будет ясно, что он плох, но даже причина его появления!
"Группа риска по синдрому Дауна на УЗИ"
не в этом ли секрет поведения нашего поциэнта?