- 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;
}
...
}
ООП в действии
Lure Of Chaos 15.12.2010 11:54 # +3
{
...
static function M() {
...
}
...
}
interested 15.12.2010 11:55 # +4
А с нотацией класса это больше похоже на попытку "сокрытия реализации". Возможно старый код (не ООП) поддерживает глобальную переменную, а новый код (ООП) получает статический интерфейс, который передаёт копию переменной, но скрывает от клиента само её существование (клиенту предписано использовать статический метод).
Если старый код (не ООП) в какой-то момент просто отпадёт (всё не поддерживают), то достаточно будет объявить переменную $config закрытым членом класса и переписать две-три строчки, а новый код будет продолжать обращаться к ней через статический интерфейс.
Без описания конкретной задачи программы подобная запись подразумевает трактовку...
elw00d 15.12.2010 15:54 # 0
interested 15.12.2010 16:07 # 0
Надо аккуратно пояснить в комментарии, что программа уже лишилась не ООП части, а люди оставили сопрягающий код. Всем не только будет ясно, что он плох, но даже причина его появления!
komprenda 15.12.2010 14:46 # −15
Lure Of Chaos 15.12.2010 15:34 # +6
unfunk 15.12.2010 15:35 # +5
istem 15.12.2010 15:39 # +5
TarasB 15.12.2010 16:50 # +2
bugmenot 15.12.2010 17:28 # +1
"Группа риска по синдрому Дауна на УЗИ"
не в этом ли секрет поведения нашего поциэнта?
komprenda 15.12.2010 17:53 # −9
bugmenot 15.12.2010 19:59 # +3
Lure Of Chaos 15.12.2010 21:13 # 0
Int 15.12.2010 21:07 # +1