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

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

    0

    1. 1
    2. 2
    add    bp, 4 ; 83C504
    lea    bp, [bp + 4] ; 8D6E04

    А они ещё говорят, что первого байта для всех КОПов не хватает, и ввели дополнительный.

    666_N33D135, 11 Июня 2018

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

    +972

    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
    str3 = "Insert Into orderList(OrderNo,Date,StoreName,TagCode,Size,Colour,TwoSidedEngraving,
    EngravingOptions,PetsName,PetsNameTwoSide,Phone1,Phone1TwoSide,Phone2,Phone2TwoSide,
    Phone3,Phone3TwoSide,OwnersFirstName,OwnersLastName,StreetAddress,Suburb,State,ZipCode,
    Country,MStreetAddress,MSuburb,MState,MZipCode,MCountry,OwnersFirstNameTwoSide,
    OwnersLastNameTwoSide,StreetAddressTwoSide,SuburbTwoSide,StateTwoSide,ZipCodeTwoSide,
    flag,Other9,idcust,Receiver,demo,databasename,isonline,faxfile) values(N'" + this.Request.Form["Orderno"] +
    "',Getdate(),N'" + Strings.Replace(this.Request.Form["storename"],"'", "''", 1, -1, CompareMethod.Binary) +
    "',N'" + str + "',N'" + this.Request.Form["tagSize"] + "',N'" + this.Request.Form["tagcolor"] + "',N'" +
    this.Request.Form["TwoSide"] + "',N'" + str2 + "',N'" +
    Strings.Replace(Strings.Replace(this.Convert(this.Request.Form["PetsName"]), "'", "''", 1, -1,
    CompareMethod.Binary), "\"", "\"", 1, -1, CompareMethod.Binary) + "',N'" +
    this.Request.Form["chbPetsName"] + "',N'" +
    Strings.Replace(Strings.Replace(Strings.UCase(this.Convert(this.Request.Form["Phone1"])), "'", "''",
    1, -1, CompareMethod.Binary), "\"", "\"", 1, -1, CompareMethod.Binary) + "',N'" +
    this.Request.Form["chbPhone1"] + "',N'" +
    Strings.Replace(Strings.Replace(Strings.UCase(this.Convert(this.Request.Form["Phone2"])),
    "'", "''", 1, -1, CompareMethod.Binary),
    "\"", "\"", 1, -1, CompareMethod.Binary) + "',N'" + this.Request.Form["chbPhone2"] + "',N'" +
    Strings.Replace(Strings.Replace(Strings.UCase(this.Convert(this.Request.Form["Phone3"])),
    "'", "''", 1, -1, CompareMethod.Binary),
    "\"", "\"", 1, -1, CompareMethod.Binary) + "',N'" + this.Request.Form["chbPhone3"] + "',N'" +
    Strings.Replace(Strings.Replace(Strings.UCase(this.Convert(this.Request.Form["FirstName"])),
    "'", "''", 1, -1, CompareMethod.Binary),
    "\"", "\"", 1, -1, CompareMethod.Binary) + "',N'" +
    Strings.Replace(Strings.Replace(Strings.UCase(this.Convert(this.Request.Form["LastName"])),
    "'", "''", 1, -1, CompareMethod.Binary),
    
    <ну и так далее...>
    
    this.Response.Write(function.ExecuteSql(str3));

    lucidfox, 05 Сентября 2011

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

    +34

    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
    #include "xsmell.hpp"
    #include <iostream>
    
    TAG(html,  NO_ATTRIBS);
    TAG(head,  NO_ATTRIBS);
    TAG(title, NO_ATTRIBS);
    TAG(body,  NO_ATTRIBS);
    TAG(p,     NO_ATTRIBS);
    TAG(a,     ATTRIB(href));
    TAG(img,   ATTRIB(src), ATTRIB(alt));
    
    int main()
    {
        using namespace xsmell;
    
        document doc = 
            _
            <html>_
                <head>_
                    <title>"XSMELL demo"<!title>_
                <!head>_
                <body>_
                    <p>"Yesssssssssssssssss!"<!p>_
                    <img .src("chucknorris.png") .alt("sneezing eyes open")>_ <!img>_
                <!body>_
            <!html>
            _;
    
        std::cout << doc << '\n';
    
        return 0;
    }

    C++ умеет HTML не хуже этих ваших похапешечек ;)

    https://bitbucket.org/edd/xsmell/src

    bormand, 07 Августа 2012

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

    +107.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
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    /// <summary>
            /// Check if this char is digit
            /// </summary>
            /// <param name="symbol">Some char</param>
            /// <returns>True if is digit</returns>
            private static bool IsDigit(char symbol)
            {
                List<char> digits = new List<char>();
                digits.Add('0');
                digits.Add('1');
                digits.Add('2');
                digits.Add('3');
                digits.Add('4');
                digits.Add('5');
                digits.Add('6');
                digits.Add('7');
                digits.Add('8');
                digits.Add('9');
                return digits.Contains(symbol);
            }

    так сказать код от велосипедиста, сделал свой IsDigit() хотя уже есть char.IsDigit()

    sv219, 13 Августа 2009

    Комментарии (259)
  6. Си / Говнокод #17904

    +139

    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
    ...
    // GRAY SCALE:
    
    #define ER_COLOR_BLACK_DEEP3        ccc3(0, 0, 0)
    #define ER_COLOR_BLACK_DEEP4        ccc4(0, 0, 0, 255)
    
    #define ER_COLOR_BLACK3             ccc3(38, 38, 38)
    #define ER_COLOR_BLACK4             ccc4(38, 38, 38, 255)
    
    #define ER_COLOR_SIDEMENU_SELECTED3 ccc3(47, 47, 47)
    
    #define ER_COLOR_LETTER_VIEW3       ccc3(51, 51, 51)
    
    #define ER_COLOR_SIDEBAR_BG3        ccc3(58, 58, 58)
    #define ER_COLOR_SIDEBAR_BG4        ccc4(58, 58, 58, 255)
    
    #define ER_COLOR_BAR_BG_GRAY3       ccc3(82, 82, 82)
    
    #define ER_COLOR_AUTHOR_NAME3       ccc3(103, 103, 103)
    
    #define ER_COLOR_SIDE_WIDGET3       ccc3(255, 255, 255)
    #define ER_COLOR_SIDE_WIDGET4       ccc4(255, 255, 255, 255)
    
    #define ER_COLOR_GRAY_TUT3          ccc3(115, 115, 115)
    
    #define ER_COLOR_GRAY3              ccc3(130, 130, 130)
    
    #define ER_COLOR_PULL_LABEL3        ccc3(142, 142, 142)
    
    #define ER_COLOR_SEND_BG4           ccc4(158, 158, 158, 255)
    #define ER_COLOR_SEND_BG3           ccc3(158, 158, 158)
    
    #define ER_COLOR_BADGE_GRAY3        ccc3(149, 149, 149)
    #define ER_COLOR_BADGE_GRAY4        ccc4(149, 149, 149, 255)
    
    #define ER_COLOR_SEPARATOR3         ccc3(195, 195, 195)
    
    #define ER_COLOR_LABELS_GRAY3       ccc3(170, 170, 170)
    
    #define ER_COLOR_AUTHOR_CAPTION3    ccc3(173, 173, 173)
    
    #define ER_COLOR_SAFE_EXIT_BG4      ccc4(189, 189, 189, 255)
    #define ER_COLOR_SAFE_EXIT_BG3      ccc3(189, 189, 189)
    
    #define ER_COLOR_MENU_GRAY_ONE3     ccc3(204, 204, 204)
    
    #define ER_COLOR_PUSHED_ELEMENT3    ccc3(205, 205, 205)
    
    #define ER_COLOR_GRAY_208_3         ccc3(208, 208, 208)
    #define ER_COLOR_GRAY_208_4         ccc4(208, 208, 208, 255)
    
    #define ER_COLOR_MENU_GRAY_TWO3     ccc3(216, 216, 216)
    
    #define ER_COLOR_NEW_GAME_BACK3     ccc3(216, 216, 216)
    #define ER_COLOR_NEW_GAME_BACK4     ccc4(216, 216, 216, 255)
    
    #define ER_COLOR_WHITE_222_3        ccc3(222, 222, 222)
    
    #define ER_COLOR_WHITE_232_3        ccc3(232, 232, 232)
    
    #define ER_COLOR_WHITE_MY_PLATE3        ccc3(243, 243, 243)
    
    #define ER_COLOR_WHITE_INTRO4       ccc4(232, 232, 232, 255)
    
    #define ER_COLOR_WHITE3             ccc3(255, 255, 255)
    #define ER_COLOR_WHITE4             ccc4(255, 255, 255, 255)

    50 оттенков серого в нашем приложении.

    tirinox, 01 Апреля 2015

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

    0

    1. 1
    Тестовый тред, можно игнорить

    Desktop, 07 Августа 2020

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

    −7

    1. 1
    Про убогость ООП подхода.

    Итак, вот допустим наследование. Есть всякие там тупые примеры ООП, типа "котик и собачка наследуется от четырехногих" и проч., где подобный бред вполне работает. Но давайте попробуем рассмотреть более интересные ситуации.

    Допустим что мы пишем некую игру. В игре есть некое оружие, например там есть огнестрел и дубинки. И мы делаем ружье, которое одновременно и огнестрел и дубинка, т.е. ружьем можно и как палкой уебать, и пальнуть как из револьвера. У родительского класса "огнестрел" есть свойства, типа дальности выстрела, точности, используемых боеприпасов, уровень прочности(износ), вес, наносимый урон при попадании. У дубинки есть свойства длины дубинки, уровень прочности(износ), вес, наносимый урон при ударе. Вес для ружья нам нужен только один, т.е. нет смысла делать два "веса" одному предмету. И огнестрел и дубинка наследуется от родительского класса "объект инвентаря", в общем тут ромбовидное наследование, которое в разных языках решается разными способами. Ну ок, допустим что мы там каким-то образом указали компилятору некоего языка X, что наследовать свойство "вес" надо лишь один единственный раз, как и прочие хрени, которые являются общими для родительского класса "объект инвентаря". Теперь надо решить с прочностью. Не все "объекты инвентаря" в этой игре имеют свойство прочности, есть например какие-то расходные материалы, типа патронов, для которых понятие прочности неприменимо. Использование ружья как дубинки изнашивает его не таким же самым образом, как использование ружья как огнестрела, но при этом слишком большой износ ружья-как-дубинки может настолько повредить его, что как огнестрел его уже и не поиспользовать из-за погнутого ствола. Но использование ружья как огнестрел никак на износ ружья-как-дубинки не влияет, типа это механический износ спускового механизма, износ ствола при стрельбе...

    j123123, 02 Ноября 2017

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

    +27

    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
    Вскрытие покровов:
    Я есмъ
    
    LispGovno
    HaskellGovno
    laMer007
    macGovno
    LinuxGovno
    C_Plus_Plus_Govno
    CKrestKrestGovno
    CPPGovno
    AnimeGovno-_-
    lucidfoxGovno
    dosGovno
    RS-232
    IKing
    и др.

    Я регал несколько пользователей guest в том числе с юникодными e и аватарками гостя. Что-то из них удалили, что-то переименовали в fake_guest или даже просто сменили аватарку.

    Не всё писал я, так как от каких-то из аккаунтов я выкладывал пароли,
    какие-то из них взламывали и\или как-то выкладывали пароли на некий сайт bugmenot (до сих пор не знаю как они туда попадали).

    У меня 320 номер юзера и я был здесь, когда зарегистрированных юзеров здесь еще не было.
    Кто-то даже считает меня страйкером.

    Я даже девственник.
    Задавайте свои вопросы.

    Говногость, 05 Августа 2016

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

    −1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Скорость SSD - ~450 мбайт/сек.
    Скорость RAM - ~6000 мбайт/сек.
    
    Так и не пойму тогда, зачем юзать SSD, когда можно поставить много оперативки и минимизировать обращения к свопу, тем самым минимизировать тормознутость системы?
    Я именно про рабочую станцию, ясно что на сервере будет выигрыш.

    YpaHeLI_, 15 Февраля 2021

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

    +71

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public static int activeThreadsCount(List<Thread> threadList)
    {
    	int i = 0;
    	for (Thread thread : threadList)
    	{
    		i += thread.isAlive() ? 1 : 0;
    	}
    	return i;
    }

    pushistayapodmyshka, 26 Ноября 2014

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