1. PHP / Говнокод #3771

    +156

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    <?php
    
    class Control {
    
        const
        ENV_VAR = 'REQUEST_URI',
        DIR = _SCRIPT,
        MAIN = 'default',
        FILENAME_MASK = '%s.ctrl.php',
        CHAR = '.';
    
        private static function _parametrize(&$var) {
            static $params = null;
            (null === $params) && ($params =& self::$_params);
    
            ((is_numeric($var))
                    && (($params[] = $var) || 1)
                    || (self::CHAR === $var[0])
                            && (($params[] = substr($var, 1)) || 1)
                    || (false !== ($dot = strpos($var, self::CHAR)))
                            && (($params[substr($var, 0, $dot)] = substr($var, $dot + 1)) || 1))
                    && ($var = null);
        }
    
    
        public static function call($name, $_PARAMS = array()) {
            static $_TPL = null;
            (null === $_TPL) && ($_TPL =& $GLOBALS['_TPL']);
            static $_DATA = null;
            (null === $_DATA) && ($_DATA =& $GLOBALS['_DATA']);
            static $_MY = -1;
            (-1 === $_MY) && ($_MY =& $GLOBALS['_MY']);
    
            $filename = self::DIR . '/' . sprintf(self::FILENAME_MASK, basename($name));
            return (file_exists($filename) && include($filename));
        }
    }

    На каком языке раньше писал автор?? Где тут С++?
    Платили за каждый символ??

    Запостил: doremidon, 23 Июля 2010

    Комментарии (6) RSS

    • Мне всегда так нравится, когда люди выпендриваются, используют классы, а при этом ООП-то не используют. Глобальные переменные -- это же писец писецовый.
      Ответить
      • согласен, - использовать глобальные переменные в теле класса - эт жопа...
        но на счёт выё - не совсем:
        - классы - это удобный контейнер: набор данных и методов обработки в одном месте лежат;

        использовать классы не придерживаясь всех принципов ООП, для личного удобства -- это не значит выё... ;-)
        Ответить
        • ради констант?
          Ответить
          • эммм... я не про этот пример =Ъ

            здесь говнецом попахивает выразительно:
            (null === $_DATA) && ($_DATA =& $GLOBALS['_DATA']);

            чел пытался организовать ветвление, без операторов? или как?))
            ----------------------------------
            а на счёт объекта с константами и методами -- в этом чот есть:
            - неймспейс чтоли?))
            Ответить
        • какая хорошая идея!
          а не использовать ли исключительно паттерн синглтон?
          профит - прямее некуда. все семеро по лаквам, не надо думать о неймспейсах, константы разнесены по предметным областям.
          давайте же забьем на уровни абстракций, инкапсуляцию, полиморфизм, наследование и будем лобать в императивном стиле с использованием клевых ооп штук.
          Ответить

    Добавить комментарий