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

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

    +165

    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
    67. 67
    68. 68
    69. 69
    Пишу менеджер автозапусков:
    
    type
      tregkey = class
        rootkey: hkey;
        keyname: string;
        param: string;
        value: string;
        function Rootkeyname:string;
      end;
    
    procedure TForm1.UpdateAutoruns;
    var
      i: integer;
      lst: tlistitem;
      rlist: tobjectlist;
      keyname: string;
      tregobj:tregkey;
    begin
      rlist := tobjectlist.create;
      ListView4.items.clear;
      try
        regread(windows.HKEY_CURRENT_USER, 'Software\Microsoft\Windows\CurrentVersion\Run',rlist);
        regread(windows.HKEY_CURRENT_USER,
          'Software\Microsoft\Windows\CurrentVersion\RunOnce', rlist);
        regread(windows.HKEY_CURRENT_USER,
          'Software\Microsoft\Windows\CurrentVersion\RunServices', rlist);
        regread(windows.HKEY_CURRENT_USER,
          'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run', rlist);
        regread(windows.HKEY_CURRENT_USER,
          'HKEY_CURRENT_USER\Software\Microsoft\ Windows NT\CurrentVersion\Windows', rlist);
        regread(windows.HKEY_LOCAL_MACHINE,
          'Software\Microsoft\Windows\CurrentVersion\Run', rlist);
        regread(windows.HKEY_LOCAL_MACHINE,
          'Software\Microsoft\Windows\CurrentVersion\RunOnce', rlist);
        regread(windows.HKEY_LOCAL_MACHINE,
          'Software\Microsoft\Windows\CurrentVersion\RunServices', rlist);
        regread(windows.HKEY_LOCAL_MACHINE,
          'Software\Microsoft\Windows\CurrentVersion\RunServicesOnce', rlist);
        regread(windows.HKEY_LOCAL_MACHINE,
          'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\RunOnceEx', rlist);
        for i := rlist.Count - 1 downto 0 do
        begin
          tregobj:=tregkey(rlist[i]);
          lst := ListView4.items.Add;
          keyname := format('%s\%s\%s', [tregobj.Rootkeyname,tregobj.keyname, tregobj.param]);
          lst.Caption :=keyname;
          lst.SubItems.AddObject(tregobj.value,tregobj);
        end;
      finally
        rlist.Free;
      end;
    end;
    
    
    
    В итоге этот код
    
    procedure TForm1.sBitBtn20Click(Sender: TObject);
    var
      i:integer;
      reg:tregistry;
    begin
        for i:= listview4.Items.Count -1 downto 0 do
        showmessage(tregkey(listview4.Items[i].subitems.Objects[0]).rootkeyname);
    end;
    
    либо вызывает ошибку доступа либо пустой messagebox. 
    В чем лажа? Я тупо не вижу ошибки.

    Stertor, 07 Сентября 2013

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

    +129

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public class DataLayer
    {
    ...
    public List<Employee> GetEmployees() { ... }
    public List<Department> GetDepartments() {...}
    public List<Roles> GetRoles() {...}
    }

    Обратил внимание, что некоторые коллеги любят использовать в качестве возвращаемых типов не обычные массивы, а обязательно List<T>.
    Долго гадал, что-ж такая за практика интерсная, на стеке прям несколько вопросов подрял.
    Затем, обратил внимание, что все они используют в качестве основного инструмента паттерн MVC.
    Проштудировав самые известные книжки по MVC, таки нашёл виновника:
    http://www.ozon.ru/context/detail/id/19064535/ - Программирование на основе Microsoft ASP.NET MVC (Дино Эспозито)
    Везде где только можно, всё просто обделано LIst'ами. Даже данные передаваемые во View...

    TauSigma, 15 Июля 2013

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

    +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
    auto addition = [] (double a, double b) { return a + b; };
    
    auto substruction = [] (double a, double b) { return a - b; };
    
    auto divide = [] (double a, double b) { return a / b; };
    
    auto multiplie = [] (double a, double b) { return a * b; };
    
    typedef std::function<double (double, double)> DoubleFunc;
    
    int main()
    {
        std::vector<DoubleFunc> funcVector;
    
        funcVector.push_back(addition);
        funcVector.push_back(substruction);
        funcVector.push_back(multiplie);
        funcVector.push_back(divide);
    
        std::for_each(funcVector.begin(), funcVector.end(), []
        (DoubleFunc func)
        {
            std::cout << func(3.14159, 100500) << std::endl;
        });
    
        system("pause");
        return 0;
    }

    А ваш язык такое сможет:)? (я о delphi, java, etc.)
    Кстати, если писать все в таком духе, то параллелиться прога будет безболезненно:), правда это уже какой-то хацкель/лисп...

    suc-daniil, 30 Июля 2012

    Комментарии (134)
  5. PHP / Говнокод #4919

    +157

    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
    class Tovar
    {
    var $id;
    var $idkey;
    var $parentid;
    var $clientid;
    var $categoryid;
    var $name;
    var $price;
    var $url;
    var $img_url;
    var $description;
    var $vendor;
    
    }
    
    class Category
    {
    var $id;
    var $idkey;
    var $parentid;
    var $name;
    }

    Работа с объектами в PHP4 :)) Вроде как Evolution Маркет...

    xakip, 14 Декабря 2010

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

    0

    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
    // почему это гавно не будет работать?
    auto size = buffer.size() - 1;
    auto *ptr = new byte[size];
    for (auto i = size; i >= 0; i--)
    {
        ptr[i] = 0;
    }
    
    // a это гавно будет работать :)
    auto size = buffer.size() - 1;
    auto *ptr = new byte[size];
    for (int i = size; i >= 0; i--)
    {
        ptr[i] = 0;
    }

    почему это говно не будет работать?

    ASD_77, 17 Марта 2021

    Комментарии (133)
  7. Python / Говнокод #26876

    +2

    1. 1
    https://pythoninstitute.org/certification/

    кто последний в сертификацию напитон?

    defecate-plusplus, 17 Августа 2020

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

    +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
    template<typename T>
    class IsClassT {
      private:
        typedef char One;
        typedef struct { char a[2]; } Two;
        template<typename C> static One test(int C::*);
        // Will be chosen if T is anything except a class.
        template<typename C> static Two test(...);
      public:
        enum { Yes = sizeof(IsClassT<T>::test<T>(0)) == 1 };
        enum { No = !Yes };
    };

    Как эта поебота работает?
    Что такое "int C::*"?

    A3APTHblu_nemyx, 19 Марта 2019

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

    +124

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    class A
    {
    a:
    Console.WriteLine("Буква А");
    goto b;
    }
    Class B:A
    {
    b:
    Console.WriteLine("Буква Б");
    goto a;
    }

    Моему другу было нечего делать... Побробовал засорить мой комп.

    qwertyru, 23 Августа 2014

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

    +65

    1. 1
    BigInteger.ONE

    LispGovno, 17 Марта 2014

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

    0

    1. 1
    2. 2
    Альфастрахование» прокомментировало утечку данных клиентов
    https://ko.ru/news/alfastrakhovanie-prokommentiroval-utechku-dannykh-klientov/

    3_dar, 28 Апреля 2023

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