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

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

    +78

    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
    public static Date convertStringToDate(String s) {
            Calendar cl = Calendar.getInstance();
            
            if (s.length() < 8) {
                return null;
            }
            if (s.length() > 8) {
                cl.set((new Integer(s.substring(0, 4))).intValue(),
                        (new Integer(s.substring(4, 6))).intValue() - 1,
                        (new Integer(s.substring(6, 8))).intValue(),
                        (new Integer(s.substring(8, 10))).intValue(),
                        (new Integer(s.substring(10, 12))).intValue(),
                        (new Integer(s.substring(12, 14))).intValue());
            } else {
                cl.set((new Integer(s.substring(0, 4))).intValue(),
                        (new Integer(s.substring(4, 6))).intValue() - 1,
                        (new Integer(s.substring(6, 8))).intValue(), 0, 0, 0);
            }
            return cl.getTime();
        }

    Люблю велосипеды

    lotik, 24 Июня 2010

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

    +78

    1. 1
    2. 2
    3. 3
    4. 4
    int strlenw(const wchar_t *s)
    {
    	return (int)((int)(strlen(s)) % sizeof(wchar_t));
    };

    Даже и не знаю что сказать. Это было в доставшемся мне проекте. Мне кажется это говнокод.

    Говногость, 11 Января 2010

    Комментарии (44)
  4. Java / Говнокод #1961

    +77.8

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    //Проверка на аццкие числа, ибо
          //"И он сделал то, что всем - малым и великим, богатым и нищим, свободным и рабам - положено будет начертание на правую руку
          // их или на чело их, и что никому нельзя будет ни покупать, ни продавать, кроме того, кто имеет это начертание или имя зверя,
          // или число имени его. Здесь мудрость. Кто имеет ум, тот сочти число зверя, ибо это число человеческое; число его шестьсот шестьдесят шесть".
          // (Апок. 13, 16-18).
          if (result.indexOf("666") > -1) {
    .........
    
    //Сатанский гетер
    public boolean isSatanic(){
    .......

    Вот такой вот код встретился в середине некого здорового метода для генерации номера пользователя.... И небольшой гетер к нему =))

    tsval, 12 Октября 2009

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

    +77.6

    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
    public void run()
        {
            try
            {            
                startExport();
            }
            catch (Throwable _t)
            {
                sendEvent(""+_t.getMessage(), true);
                logger.log(Level.SEVERE, charset, _t);
            }
            finally
            {
                System.gc();
            }
        }

    А ещё этот человек дёргает в одном сервисе gc каждые 4 секунды. Любые попытки ударить по рукам нарываются на отлуп: "так работает же!". Это не студент! Это реальный production код!

    konsoletyper, 06 Апреля 2010

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

    +77.5

    1. 1
    2. 2
    3. 3
    4. 4
    //devPin и pin - массивы байт, а сравниваем мы их так :
    
    if (Utils.bytesToHex(devPin).equals(Utils.bytesToHex(pin))) {
    ....

    :)))

    tuba.linux, 21 Октября 2009

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

    +77.5

    1. 1
    2. 2
    3. 3
    4. 4
    /**
     * Этот класс содержит сакральные знания, полученные годами отладки предыдущей версии.
     * Рационально понять этот код невозможно, поэтому менять с осторожностью!
     */

    В одном из классов нашел вот такой вот комментарий.

    guest, 11 Июня 2009

    Комментарии (2)
  8. PHP / Говнокод #2

    +77.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    <?php
      phpinfo();
      if (file_exist('../../../../etc/passwd'))
      {
        include('../../../../etc/passwd');
      }

    guest, 23 Ноября 2008

    Комментарии (238)
  9. Java / Говнокод #2464

    +77.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
    13. 13
    14. 14
    15. 15
    16. 16
    protected static Map<Long, List<Bank.BankMoney>> getWinnersBanksMap(Map<Long, List<Bank.BankMoney>> sharedBank) {
            Map<Long,List<Bank.BankMoney>> winnersWithBanks = new HashMap<Long, List<Bank.BankMoney>>();
    
            for (Map.Entry<Long, List<Bank.BankMoney>> longListEntry : sharedBank.entrySet()) {
                    Long playerId = longListEntry.getKey();
                    List<Bank.BankMoney> banksWonOnThisIteration = longListEntry.getValue();
    
                    List<Bank.BankMoney> banks1 = winnersWithBanks.get(playerId);
                    if (banks1 == null) {
                        banks1 = new ArrayList<Bank.BankMoney>();
                        winnersWithBanks.put(playerId, banks1);
                    }
                    banks1.addAll(banksWonOnThisIteration);
                }
            return winnersWithBanks;
        }

    В результате серии рефакторингов чужого кода обнаружил следующий метод, над которым долго ломал голову - что он делает... Оказалось, ничего. Возвращает копию исходного объекта.

    dvb, 21 Января 2010

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

    +77.3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    // Год и месяц редактируются как Double, а хранятся в  базе как два инта
                    if (aValue == null) {
                        current.setStartMonth(0);
                        current.setStartMonth(0);
                    } else {
                        current.setStartMonth(Integer.parseInt(aValue.toString().split(".")[0]));
                        current.setStartMonth(Integer.parseInt(aValue.toString().split(".")[1]));
                    }

    Программисты клиента и базы стоят один другого

    Jk, 27 Октября 2009

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

    +77.2

    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
    /**
     * todo не самый лучший способ обработки завершения диалогов
     * 
     * @author roman
     */
    public final class MyBoolean
    {
        private boolean value = false;
        public boolean getValue()
        {
            return value;
        }
        public void setValue(
            boolean value )
        {
            this.value = value;
        }
    }

    ctepx, 09 Февраля 2010

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