1. Лучший говнокод

    В номинации:
    За время:
  2. PHP / Говнокод #8526

    +149

    1. 1
    2. 2
    define('DEBUG', !isset($_REQUEST["debug"]) ? false : true);
    define('DEV', !isset($_REQUEST["dev"]) ? false : true);

    asfalanaft, 15 Ноября 2011

    Комментарии (114)
  3. ActionScript / Говнокод #6500

    −105

    1. 1
    openDialog.addEventListener(Dialog.CLOSE_DIALOG, eventCloseOpenDialog);

    Если причитаться конечно понятно что оно делает, но при первом взгляде просто вводит в ступор.

    kyzi007, 28 Апреля 2011

    Комментарии (114)
  4. JavaScript / Говнокод #27476

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    function main() {
    
        let a = 10;
    
        function f() {
            print(a);
        }
    
        f();
    
        print("done.");
    }

    С виду этот простой кодик - это то что не может С и я так долго трахался что бы смочь его проимлементировать.... но я бля сделал

    ASD_77, 21 Июня 2021

    Комментарии (113)
  5. C# / Говнокод #25311

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    class PituhFazer{
        private Dictionary<string, ObservableCollection<SgnilPitushokViewModel>> Ghildren { get; } = new Dictionary<string, ObservableCollection<SgnilPitushokViewModel>>();
    
        // почему жаба может так а шарп нет?
        private Dictionary<string, ObservableCollection<SgnilPitushokViewModel>> Ghildren { get; } = new Dictionary();
    }

    Почему в питушарпе до сих пор нету выведения типов из под конструктора?
    меня заебало уже писать эти багры

    Lorip1971, 15 Января 2019

    Комментарии (113)
  6. JavaScript / Говнокод #25217

    +3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    const arr = [['govno',  'shit'], ['kod', 'code']]
    //we expect it to be {'govno': 'shit', 'kod' :  'code'}
    
    //unsupported(yet)
    Object.fromEntries = arr => 
        Object.assign({}, ...Array.from(arr, ([k, v]) => ({[k]: v}) ));
    const res1 = Object.fromEntries(arr)
    
    const res2 = arr.reduce((res, [key, value]) => Object.defineProperty(res, key, {'value': value, 'enumerable': true}), {})
    
    const res3 = {}
    arr.forEach(([key, value]) => res3[key] = value)

    А как превратить массив пар ключ-значение в ассоциативный на Вашем языке?

    bootcamp_dropout, 23 Декабря 2018

    Комментарии (113)
  7. Java / Говнокод #24277

    −2

    1. 1
    2. 2
    3. 3
    // this method is used for storing name instead of password
        @Override
        public String getPassword() { return name; }

    gbuyankin, 17 Мая 2018

    Комментарии (113)
  8. Куча / Говнокод #19011

    +2

    1. 1
    Как избавиться от говнокода?

    Вот есть большой проект в большой корпорации. Ты приходишь и видишь, что архитектура говно, комментариев нет, стиль кода различается в разных частях одного файла, да и в остальных мелочах полный говнокод.
    С другой стороны, нужно добавить много разных фич и пофиксить баги, все программисты и ты тоже активно заняты этим, вы приделываете новые костыли и заплатки.

    Как с этим бороться? Убеждать менеджера, что вам нужно несколько недель, а то и месяцев на полный рефакторинг всего? Заниматься этим в свободное время? Забить и говнокодить дальше? Уйти в другое место (не факт ведь, что там будет лучше)?

    imihajlov, 12 Ноября 2015

    Комментарии (113)
  9. PHP / Говнокод #17058

    +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
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    <?php
        class view {
            protected $dir; //templates directory
            protected $lang; //language
            protected $authorized;
            protected $user;
    
            protected function getCache($template) {
                //return false; //uncomment for developing
                if (!isset($_SESSION['cache_' . $template])) return false;
                return $_SESSION['cache_' . $template];
            }
    
            protected function addCache($template, $content) {
                $_SESSION['cache_' . $template] = $content;
            }
    
            public function __construct($dir, localization $lang, user $user) {
                $this->dir = $dir; 
                $this->authorized = (bool) $user->authorized;
                $this->user = $user;
                $this->lang = $lang;
            }
    
            public function invoke($template, $params = [], $return = false, $quests = []) { //can be called w/o params
                $filename = ROOT . '/' . $this->dir . '/tpl/' . $template . '.tpl';
                $lang = $this->lang->getData();
                $content = $this->getCache($template);
                if (!$content) {
                    $f = fopen($filename, 'a+');
                    $content = fread($f, (filesize($filename) > 0 ? filesize($filename) : 1));
                    $this->addCache($template, $content);
                }
                foreach ($params as $key => $value) {
                    $content = str_ireplace('{{' . $key . '}}', $value, $content);
                } 
                preg_match_all("@{{:([a-z0-9_]+?)}}@sui", $content, $localization);
                $localization = $localization[1];
                foreach ($localization as $value) {
                    $content = str_ireplace('{{:' . $value . '}}', $lang[$value], $content);
                } //applying lang
    
                foreach ($quests as $key => $value) {
                    preg_match_all("@{\?$key=$value\?}(((?!{\?.+\?}).)*?){\?\?}@sui", $content, $matches);
                    while (!empty($matches[0])) {
                        $content = str_replace($matches[0][0], $matches[1][0], $content);
                        preg_match_all("@{\?$key=$value\?}(((?!{\?.+\?}).)*?){\?\?}@sui", $content, $matches);
                    }
                    preg_match_all("@{\?$key=((?!$value).+?)\?}(((?!{\?.+\?}).)*?){\?\?}@sui", $content, $matches);
                    while (!empty($matches[0])) {
                        $content = str_replace($matches[0][0], "", $content);
                        preg_match_all("@{\?$key=((?!$value).+?)\?}(((?!{\?.+\?}).)*?){\?\?}@sui", $content, $matches);
                    }
                }
    
                preg_match_all("@{\?access=([a-z0-9]+?)\?}(((?!{\?.+\?}).)*?){\?\?}@sui", $content, $perms);
                while (!empty($perms[0])) {
                    foreach ($perms[1] as $value) {
                        if ($this->user->canAccess($value))
                            $content = preg_replace("@{\?access=$value\?}(((?!{\?.+\?}).)*?){\?\?}@sui", "$1", $content);
                        else $content = preg_replace("@{\?access=$value\?}(((?!{\?.+\?}).)*?){\?\?}@sui", "", $content);
                    }
                    preg_match_all("@{\?access=([a-z0-9]+?)\?}(((?!{\?.+\?}).)*?){\?\?}@sui", $content, $perms);
                }
    
                $content = preg_replace("@{\?authorized=((?!" . (int) $this->authorized . ").+?)\?}(.+?){\?\?}@sui", "", $content);
                $content = preg_replace("@{\?authorized=" . (int) $this->authorized . "\?}(.+?){\?\?}@sui", "$1", $content);
                $content = preg_replace("@{\?(.+?)\?}(.+?){\?\?}@sui", "", $content);
    
                $content = str_ireplace('{{DIR}}', '/' . $this->dir, $content); //replacing DIR param
                $content = str_ireplace('{{URI}}', urlencode(other::filter($_SERVER['REQUEST_URI'])), $content); //replacing URI param
                $content = str_ireplace('{{HTTP_HOST}}', $_SERVER['HTTP_HOST'], $content); //replacing HTTP_HOST param
                $content = preg_replace("@{\?((.+?)|(.+?){0})\?}@sui", "", $content);
                if (!$return) echo $content;
                return $content;
            }
        }
    ?>

    Мой шаблонизатор. Детям и беременным женщинам не смотреть.

    Efog, 03 Ноября 2014

    Комментарии (113)
  10. Pascal / Говнокод #13763

    +80

    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
    Главная » Усыпление программы
    Усыпление программы
    Автор: -Гепард97-
    Написать автору
    [просмотров 751]
    
    В VBS есть функция wscript.sleep, позволяющая усыпить скрипт. Но как такое сделать в VB? Ответ прост: делаем новый модуль и пишем код:
    
    Public Declare Sub Sleep Lib "kernel32" (byval dwMilliseconds As Long)
    
    И все. Когда прогу нужно усыпить, просто пишем в коде проги, если например прога должна остановиться на 2 секунды то пишем
    
    Sleep 2000
    
    Этого способа нет на MSDN, я его сам отрыл

    Билл Гатэс прочел это и уснул...
    Z-z-z-z...

    Stertor, 10 Сентября 2013

    Комментарии (113)
  11. PHP / Говнокод #10871

    +54

    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
    foreach($Articles as $art){
    			$id = $art['id'];
    			$count++;	
    			if(isset($_GET['str'])){
    				$str = (int)$_GET['str']; 
    				$mn = $number*($str-1)+1;
    				}else{
    					$str = 1;
    					$_GET['str'] = 1;
    				}	
    			if($count == $mn){
    				$flag = true;
    				$k=5;
    			}		
    			if($flag && $k!=0){
    				$k--;
    				$title = $art['title'];
    				$content = $art['content'];
    				$author = $art['author'];
    				$date = $art['date'];
    				printf("<h1>%s</h1><br /><h3 align='left'>%s</h3>%s  <a href='index.php?id=articles&str=%s&nomer=%s'>Далее</a><hr /><br />",$title,$date, substr($content, 0,800),$nav, $id);
    					}
    		}

    Постраничная навигация

    BrdNLSrg, 10 Июня 2012

    Комментарии (113)