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

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

    +112.5

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    public void Log(string pSource, string pMessage, EventLogEntryType pEntryType) {
        try {
            if (!EventLog.SourceExists(pSource)) {
                EventLog.CreateEventSource(pSource, "Application");
            }
    
            EventLog.WriteEntry(pSource, pMessage, pEntryType);
        }
        catch (Exception _ex) {
            Log("", _ex.ToString(), EventLogEntryType.Error);
        }
    }

    Пишем в лог - постоянно...
    Автор находки: http://ayende.com/Blog/archive/2009/03/19/how-not-to-write-a-logger.aspx

    guest, 27 Марта 2009

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

    +112.2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if (ctrl.GetType().Name == "TextBox")
    {
           TextBox tb = (TextBox)ctrl;
    
         // остальное вырезано
    }

    Я даже комментить не могу это.

    headliner, 19 Января 2010

    Комментарии (8)
  4. Pascal / Говнокод #1844

    +112.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
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    procedure TForm1.Button2Click(Sender: TObject);
    var
    result  : Tdatetime;
    begin
    Result := EncodeDate(1970, 1, 1) + ((strtofloat(edit26.Text)+(strtofloat(edit2.Text)*3600)) / 86400); {86400=No. of secs. per day}
    
    edit23.Text := formatdatetime('d', Result);
    edit24.Text := formatdatetime('m', Result);
    edit25.Text := formatdatetime('yyyy', Result);
    edit27.Text := formatdatetime('h', Result);
    edit28.Text := formatdatetime('n', Result);
    edit29.Text := formatdatetime('s', Result);
    edit30.text := datetimetostr(result);
    form1.ActiveControl := edit30;
    end;
    
    
    procedure TForm1.Button3Click(Sender: TObject);
    var
      x,y      : extended;
    begin
    edit12.Text := formatdatetime('d', datetimepicker2.date);
    edit17.Text := formatdatetime('m', datetimepicker2.date);
    edit18.Text := formatdatetime('yyyy', datetimepicker2.date);
    x := (EncodeDate(strtoint(edit18.text), strtoint(edit17.text), strtoint(edit12.text)) - EncodeDate(1970, 1, 1)) * 86400 ;
    y := (strtoint(edit20.text)*3600) + (strtoint(edit21.text)*60) + strtoint(edit22.text);
    x := x+y-(strtofloat(edit1.Text)*3600);
    edit19.Text := floattostr(x);
    form1.ActiveControl := edit19;
    end;

    Особенно старательный ковнокодер, умудрился растянуть на 30 строк то, что реально заняло у меня 8.
    ну я не говорю еще про большую описательную часть его кода.

    gorky, 15 Сентября 2009

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

    +112.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public IEnumerator GetEnumerator()
                {
                    for (int CurID = 0; CurID < (controls.Count + animations.Count) / 2; CurID++)
                    {
                        KeyValuePair<Control, Animation> kvp = new KeyValuePair<Control, Animation>(controls[CurID], animations[CurID]);
                        yield return kvp;
                    }       
                }

    Писал я код, и задумался. А когда очнулся - уже было это.
    ЗЫ. controls.Count == animations.Count

    psina-from-ua, 14 Февраля 2010

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

    +112

    1. 1
    2. 2
    final Transform starscream = root.getLocalTransform();
    final Transform skywarp = starscream.clone();

    someone, 24 Декабря 2012

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

    +112

    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
    switch (materialType.MaterialClass)
    {
        case 1:
            xtraTabControl1.SelectedTabPageIndex = 0;
            gridView1.Focus();
            eanSimpleButton.Enabled = true;
            break;
        case 2:
            xtraTabControl1.SelectedTabPageIndex = 1;
            gridView2.Focus();
            eanSimpleButton.Enabled = false;
            break;
        case 3:
            xtraTabControl1.SelectedTabPageIndex = 3;
            gridView4.Focus();
            eanSimpleButton.Enabled = false;
            break;
        default:
            xtraTabControl1.SelectedTabPageIndex = 2;
            gridView3.Focus();
            eanSimpleButton.Enabled = false;
            break;
    }

    Стандартный такой быдло-производственный код.

    В зависимости от магического числа в БД, в поле material_class, показывается один из четырёх гридов. При этом в реальной базе класса 3 вообще нет - это поле принимает значения 1, 2 и NULL.

    someone, 21 Ноября 2012

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

    +112

    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
    public class _
    { ...some code... }
    
    public class ClassHelper : _
    { ...more code... }
    
    в другой сборке
    
    public class __
    { ...some code... }
    ...
    //Разработчик понял, что начинает путаться в именах классов _ и __ и написал
    
    public class lib : __
    { ... }

    Flyperformances, 06 Сентября 2012

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

    +112

    1. 1
    int cutPosition = sb.ToString().IndexOf("                                          \r\n                                          ");

    Коммерческий проект :)

    ddv_demon, 05 Июля 2012

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

    +112

    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
    switch (SelectedCategory)
                {
                    case "Landscapers":
                        inputSearch.Value = "Landscapers";
                        break;
    
                    case "Baby sitters":
                        inputSearch.Value = "Baby sitters";
                        break;
    
                    case "Doctor":
                        inputSearch.Value = "Doctor";
                        break;
    
                    case "Cleaning services":
                        inputSearch.Value = "Cleaning services";
                        break;
    
                    case "Pet sitters":
                        inputSearch.Value = "Pet sitters";
                        break;
    
                    case "Handyman":
                        inputSearch.Value = "Handyman";
                        break;
    
                    case "Electrical services":
                        inputSearch.Value = "Electrical services";
                        break;
    
                    case "Tutor":
                        inputSearch.Value = "Tutor";
                        break;
    
                    case "Dog walker":
                        inputSearch.Value = "Dog walker";
                        break;
    
                    case "Plumbing":
                        inputSearch.Value = "Plumbing";
                        break;
    
                    case "Caterers":
                        inputSearch.Value = "Caterers";
                        break;
    
                    case "Misc":
                        inputSearch.Value = "Misc";
                        break;
                }

    обычный switch

    mangyst, 30 Мая 2012

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

    +112

    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
    <?php
    @session_start();
    include("с.php");
    if(isset($_POST['postid'])){
    	if($_POST['PoM']=="plus"){
    		if(isset($_SESSION['userid']) && mysql_num_rows(mysql_query("SELECT * FROM `bans` WHERE `userid`='".@$_SESSION['userid']."';"))==0){
    		$query89=mysql_query("SELECT `from` FROM `blogs` WHERE `bid`='".$_POST['postid']."' LIMIT 1;");
    		if($_SESSION['userid']==mysql_result($query89, 0, 0)){ } else {
    		$get_rating=mysql_query("SELECT `rating` FROM `blogs` WHERE `bid`='".$_POST['postid']."';");
    		$check_vote_plus=mysql_query("SELECT `voteid` FROM `blogvotes` WHERE `bid`='".$_POST['postid']."' and `userid`='".$_SESSION['userid']."' and `PoM`='plus';");
    		$check_vote_minus=mysql_query("SELECT `voteid` FROM `blogvotes` WHERE `bid`='".$_POST['postid']."' and `userid`='".$_SESSION['userid']."' and `PoM`='minus';");
    		if(mysql_num_rows(@$check_vote_minus)){
    		mysql_query("DELETE FROM `blogvotes` WHERE `bid`='".$_POST['postid']."' and `userid`='".$_SESSION['userid']."';");
    		mysql_query("UPDATE `blogs` SET `rating`=".mysql_result($get_rating, 0, 0)."+1 WHERE `bid`='".$_POST['postid']."';");
    		}
    		$get_rating2=mysql_query("SELECT `rating` FROM `blogs` WHERE `bid`='".$_POST['postid']."';");
    		$check_vote_plus3=mysql_query("SELECT `voteid` FROM `blogvotes` WHERE `bid`='".$_POST['postid']."' and `userid`='".$_SESSION['userid']."' and `PoM`='plus';");
    		if(!mysql_num_rows(@$check_vote_plus3)){
    		mysql_query("UPDATE `blogs` SET `rating`=".mysql_result($get_rating2, 0, 0)."+1 WHERE `bid`='".$_POST['postid']."';");
    		mysql_query("INSERT INTO blogvotes(`bid`, `userid`, `PoM`) VALUES('".$_POST['postid']."', '".$_SESSION['userid']."', '".$_POST['PoM']."');");
    		$query6=mysql_query("SELECT `userid`, `username`, `email`, `points`, `reputation` FROM `users` WHERE `userid`='".$_SESSION['userid']."' LIMIT 1");
    		$current_user=mysql_fetch_row($query6);
    		}
    		}
    		}
    		$get_r_rating=mysql_query("SELECT `rating` FROM `blogs` WHERE `bid`='".$_POST['postid']."';");
    		$ratingValue=mysql_result($get_r_rating, 0, 0);
    	}
    }
    ?>

    Очередной код, используемый в моём самописном движке для оценки постов. Разобраться во всём этом удаётся только благодаря тому, что я писал его недавно и помню построение кода.

    BiggestFox, 23 Апреля 2012

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