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

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

    −167

    1. 1
    server_metods_link = (parent as main).loading_page;

    FDT почему-то не давал мне компилить без такой вот хитрой конструкции... обращение к parent вызывало "ошибку на этапе компиляции"

    KirAmp, 30 Октября 2010

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

    +145

    1. 1
    Кода нет

    Запустил я сегодня (пардон, вчера) FlexPMD — весь проект можно постить сюда.
    Были там и копипасты по 150 с лишним строк десяток раз, и кучи вложенных условий, и громадные вложенные кейсы, и пустые catch блоки, одним словом нашшитало оно в совокупности 24000 недостатков.
    Весь проект не запостишь же.

    Werdn, 30 Октября 2010

    Комментарии (3)
  4. Python / Говнокод #4458

    −83

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    class ClassifierChoiceForm(forms.ModelChoiceField):
        def __init__(self, dict, empty_label=u"---------", cache_choices=False,
                required=True, widget=forms.Select, label=None, initial=None, help_text=None, to_field_name=None, with_classes=False):
            try:
                 ...
                 # до хуя всего
                 ...
            except Exception, e:
                super(forms.ModelChoiceField, self).__init__()

    прелесть

    t0ster, 26 Октября 2010

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

    +110

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <asp:EntityDataSource ID="targert" runat="server" ConnectionString="name=portalEntities1"
                DefaultContainerName="portalEntities1" EnableFlattening="False" 
                CommandText="SELECT first_table.id FROM first_table 
            WHERE ANYELEMENT(select second_table.field_2 from first_table.second_table where second_table.field_2 = @var1).field_2 = @var1
            " EntityTypeFilter="">
                <CommandParameters>
                    <asp:QueryStringParameter Name="var1" QueryStringField="var1" DbType="String" />
                </CommandParameters>
            </asp:EntityDataSource>

    Вот такой странный код с двойной проверкой...
    таблицы second_table и first_table имеют связь многие ко многим...

    test_unit, 26 Октября 2010

    Комментарии (3)
  6. PHP / Говнокод #4436

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    define(FILE, $_SERVER['DOCUMENT_ROOT'] . '/file.db');
    if (!empty($date)){
       $date = @file_get_contents(FILE);
       $pageLinks = unserialize($date);
       //~50 lines of code
    }

    И снова >_<

    Sum, 25 Октября 2010

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

    +74

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    cmd = new byte[2]; //name length
    is.read(cmd);
    int fnamel = cmd[0] << 8 | cmd[1];
    cmd = new byte[fnamel];
    is.read(cmd);
    char[] name = byteToChar(cmd);
    cmd = new byte[4];
    is.read(cmd);
    len = (cmd[0] << 24 & 0xFF000000) | (cmd[1] << 16 & 0xFF0000) | (cmd[2] << 8 & 0xFF00) | (cmd[3] & 0xFF);
    System.out.println("FIO requested: "+new String(name)+"; Size: "+len+" bytes;");

    писал (и пишу уже 1 час (планирую через час же закончить)) микро-сетевой аплоадер файлов.

    danilissimus, 23 Октября 2010

    Комментарии (3)
  8. Си / Говнокод #4415

    +145

    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
    enum {
    	CONST_A,
    	CONST_B,
    	CONST_C,
    	/* ... и еще пяток в том же духе */
    };
    
    /* ... */
    
    char opType = ...;
    switch(opType) {
    case 'A':
    	/* строчек 10 кода использующие CONST_A */
    	break;
    case 'B':
    	/* капипасто тех же строчек 10 кода - но теперь с CONST_B */
    	break;
    case 'C':
    	/* капипасто тех же строчек 10 кода - но с CONST_C */
    	break;
    /* и т.д. и т.п. для других значений opType */
    }

    только что убил полчаса что бы понять что switch/case завален 100% копиями того же самого кода - только со смененной константой. просто замапить тот char в enum ... это наверное исключительно для слишком умных.

    Dummy00001, 22 Октября 2010

    Комментарии (3)
  9. JavaScript / Говнокод #4407

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    if( DateDiff > 1000*60*60*24*122 ) {
    	  	 $("#mfilter_err").text("Выбран интервал времени больше 4 месяцев");
    		 return false;
    	  }

    Странное у человека представление о длине 4 месяцев

    getrix, 21 Октября 2010

    Комментарии (3)
  10. Java / Говнокод #4380

    +71

    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
    class LinkedListVector{
        public int crd;
        public int length;
        LinkedListVector head;
        LinkedListVector next;
        LinkedListVector prev;
        LinkedListVector(){
            this.head=this;
            this.prev=this;
            this.next=this;
            this.length=0;
        }
        LinkedListVector(int val){
            LinkedListVector save=this.head.prev;
            this.prev=this.head.prev;
            this.next=this.head;
            this.next.prev=this;
            save.next=this;
            this.head.length++;
            this.crd=val;
        }
    }

    Эпичнейшая попытка реализовать двусвязный циклический список.

    kir_rik, 18 Октября 2010

    Комментарии (3)
  11. Python / Говнокод #4357

    −181

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    def get_children(self, **kwargs):
        q = super(Classifier, self).get_children()
        try:           
            for i in kwargs['related']:
                q = q.filter(classifiers = super(Classifier, self).get_by(i, key='translit'))
        except:
            pass
        return q

    такое в django проекте

    t0ster, 12 Октября 2010

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