1. Java / Говнокод #1550

    +83.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
    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
    static {
    
    		ruleNum10 = new HashMap();
    		ruleNum10.put("0", "0");
    		ruleNum10.put("1", "1");
    		ruleNum10.put("2", "2");
    		ruleNum10.put("3", "3");
    		ruleNum10.put("4", "4");
    		ruleNum10.put("5", "5");
    		ruleNum10.put("6", "6");
    		ruleNum10.put("7", "7");
    		ruleNum10.put("8", "8");
    		ruleNum10.put("9", "9");
    
    		ruleNum16 = new HashMap();
    		ruleNum16.put("0", "0");
    		ruleNum16.put("1", "1");
    		ruleNum16.put("2", "2");
    		ruleNum16.put("3", "3");
    		ruleNum16.put("4", "4");
    		ruleNum16.put("5", "5");
    		ruleNum16.put("6", "6");
    		ruleNum16.put("7", "7");
    		ruleNum16.put("8", "8");
    		ruleNum16.put("9", "9");
    		ruleNum16.put("10", "10");
    		ruleNum16.put("11", "11");
    		ruleNum16.put("12", "12");
    		ruleNum16.put("13", "13");
    		ruleNum16.put("14", "14");
    		ruleNum16.put("15", "15");
    
    	}

    Очередной пример китайского героизма во владении копипейстом. Они похоже не знают о существовании цикла for и метода String.valueOf. А что если бы там было 200 елементов хотя бы?

    cheap_chinese, 12 Августа 2009

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

    +74.7

    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
    Лучший индусский способ определения текущего трехбуквенного обозначения месяца:
    
    String currentMonth = ((String) monthMap.get(new Integer(today.getMonth()))).substring(0, 3);
    
    где
    
    monthMap:
    
    Map monthMap=new HashMap();	
    			
    monthMap.put(new Integer(Calendar.JANUARY), Constants.JANUARY);
    monthMap.put(new Integer(Calendar.FEBRUARY), Constants.FEBRUARY);
    monthMap.put(new Integer(Calendar.MARCH), Constants.MARCH);

    zavr, 12 Августа 2009

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

    −108

    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
    def main():
      # define subscribe path and subscribers
      subscr=[]
      adrs=[]
      adrs.append("cav")
      sitem={'path':'test','adrs':adrs}
      subscr.append(sitem)
    
      # checking for correct usage
      changed= []
      if len(sys.argv)>1:
         ...
      else:
        mode="test"
        rev= "test.rev"
        rpath= "test.rpath"
        relpath= "test.relpath"
        webpath= "http:\\test.webpath\\"
        changed= ["test _h.c"]
     
      # search path of subscribe and collect dictionary of address and need files
      sends= {}
      for sitem in subscr:
        send= False
        files= []
        for file in changed:
          needfile= (file.find(sitem['path'])==0)
          send= send or needfile
          if needfile:
            files.append(file)
        if send:
          for adr in sitem['adrs']:
            if sends.has_key(adr):
              files.extend(sends[adr])
            sends.update({adr:files})
      
      #send emails
      for adr in sends.keys():
        #print "Found subscribe for:" + adr
        msg= message(rev,relpath,webpath,sends[adr])
        subj= "Commit rev." + rev + " on SVN server"
        if mode=='test':
          PrintMail(subj, msg, adr)
        else:
          SendMail(subj, msg, adr)

    Безбашенная работа со словарями и списками

    lolikandr, 12 Августа 2009

    Комментарии (0)
  4. C++ / Говнокод #1547

    +13

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    __inline BOOL IsNumeric(LPTSTR lpsBuf)
    {
     int i, nSize = _tcslen(lpsBuf);
     for (i = 0; i < nSize; i++)
      if ((lpsBuf[i] < _T('0')) || (lpsBuf[i] > _T('9')))
       return (FALSE);
     return (TRUE);
    }

    Серъёзный алгоритм.

    Exhumer, 12 Августа 2009

    Комментарии (5)
  5. Си / Говнокод #1546

    +135.2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #define DBGLEVEL2 2
    #define ER2 if (o.dbglvl>=DBGLEVEL2) fprintf(stderr,
    
    some_fun(int errorcode) 
    {
      ER2 " Error %d", errocode);
    }

    Использование незакрытых скобок внутри #define

    lolikandr, 12 Августа 2009

    Комментарии (5)
  6. Java / Говнокод #1545

    +69.9

    1. 1
    2. 2
    3. 3
    public void ejbPassivate() throws EJBException, RemoteException {
    		return;
    	}

    Истинный китайский девелопер никогда не доверяет компилятору! Ато если ж в функции тело пустое, мало ли, вдруг она никогда не возвратиться. Какой выход? Написать об ентом явно.

    cheap_chinese, 12 Августа 2009

    Комментарии (14)
  7. C++ / Говнокод #1544

    +17

    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
    std::string sError = "";
    try
    {
       fIn = fopen(cszFileName, "rb");
       if (fIn == 0)
       {
         sError = "Can not open file: ";
         sError += cszFileName;
         throw std::string("");
       }
    
       if (!ParseFile(fIn, pLookup))
       {
         sError = "Bad file format. File: ";
         sError += cszFileName;
         throw std::string("");
       }
    
       sError = "";
       throw std::string("");
    }
    catch (std::string& e)
    {
       if (fIn != 0)
       {
          fclose(fIn);
          fIn = NULL;
       }
       if (sError.length() != 0)
       {
          throw std::exception(sError.c_str());
       }
    }

    Там же нашел еще более шикарное продолжение гавнокода http://govnokod.ru/1459

    lugal, 12 Августа 2009

    Комментарии (7)
  8. C++ / Говнокод #1543

    +18.3

    1. 1
    2. 2
    3. 3
    4. 4
    while(0<1)
    {
      ...
    }

    В универе встречал такой вот бесконечный цикл

    shurikroger, 12 Августа 2009

    Комментарии (17)
  9. C# / Говнокод #1542

    +133.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
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    /// <summary>
    /// General handler for all buttons
    /// </summary>
    private void FormButtons_Click(object sender, EventArgs e)
    {
        Control control = (Control) sender;
    
        if (control.Handle == btnCreateInvoices.Handle)
            ExportOrders();
        else if (control.Handle == btnFirstUsageInvoices.Handle)
            ExportFirstUsageInvoices();
        else if (control.Handle == btnImportCustomers.Handle)
            ImportCustomers();
        else if (control.Handle == btnImportProdcuts.Handle)
            ImportProducts();
        else if // и так далее...
    }

    WinForms приложение, на все кнопки навешен 1 обработчик события OnClick.
    А внутри вот....

    vleschenko, 12 Августа 2009

    Комментарии (24)
  10. PHP / Говнокод #1541

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    $max_b = 0;
        for($i=1;$i<=40;$i++){
          $max_b +=(41-$i);
        }

    Нашел у товарища в коде, данный кусочек вызывался в цикле порядка десятка тысяч раз

    vasly, 12 Августа 2009

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