1. C# / Говнокод #19652

    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
    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
    public static IEnumerable fGetPostIMAP(string port, int port2, string username, string password, string startCount, string path)
    {
        Stopwatch swatch = new Stopwatch();
        swatch.Start();
        int Delay = 10;
        System.IO.StreamWriter sw = null;
        System.Net.Sockets.TcpClient tcpc = null;
        int bytes = -1;
        int is_file = 0;
        int is_att = 0;
        byte[] buffer;
        StringBuilder sb = new StringBuilder();
    //...
        string UID = "";
        string From;
        try
        {
    //...
    
                        if (ListMessage.IndexOf("filename=") > -1)
                        {
                            temp = ListMessage.Replace("filename=", "");
                            temp = temp.Trim();
                            file_name = temp;
                            is_file = 1; temp = ""; is_att = 1;
                        }
    //...
                            if (is_file == 1)
                            {
                                if (ListMessage.IndexOf("--") > -1)
                                    end_file = 1;
                                else
                                    temp = temp + ListMessage;
    
                            }
                            if (ListMessage == "")
                            {
                                is_file = 1;
                            }
    //...
        }
        catch (Exception ex)
        {
            rows.Add(new object[] { "ERROR:" });
            rows.Add(new object[] { ex.Message });
        }
        finally
        {
            if (sw != null)
            {
                sw.Close();
                sw.Dispose();
            }
            if (tcpc != null)
            {
                tcpc.Close();
            }
        }
        return rows;
    }

    Делфи головного мозга просвечивает в каждой строчке. Даже использованием 0/1 вместо булева типа не скрыть дельфишной сути.

    Запостил: tucvbif, 17 Марта 2016

    Комментарии (26) RSS

    • >Делфи
      Хуйню написал. Ловеркейс в переменных и параметрах (не в стиле VCL), обилие фигурных скобок вокруг одиночных операторов (на паскалях begin/end обычно влом писать, где можно обойтись без них), инициализация переменных при объявлении вызовом конструктора, нихуя на Delphi непохоже.
      Ответить
      • ха-ха-ха, ты думаешь что языки отличаются кейсом переменных?

        Ты такой смешной глупый нуб, тебе еще столько всего предстоит узнать о программировании
        Ответить
        • Тебе предстоит дать хоть какое-то обоснование издаваемым тобою пустым звукам.
          Ответить
          • пошли выйдем???
            Ответить
            • Давно уже. http://govnokod.ru/user/exit/?url=http%3A%2F%2Fgovnokod.ru
              Ответить
              • ты чо совсем рамсы попутал??111 сейчас приедут к тебе
                Ответить
      • И нету Форм1, Кнопка4 и ПолеСоСписком5
        Ответить
      • Там полный зоопарк кейсов. А скобочки… ну, может прочитал где-то что низзя.
        А что не так с инициализацией вызовом конструктора?
        Timer1:=TTimer.Create(Self);
        Ответить
        • С ней не то чтобы что-то не так, но из-за отсутствия в Delphi автодеструкторов и сборки мусора, такой код сразу же обрастает всякими try/finally, Free и прочим обнулением. Про невозможность объявления переменных вне специального блока уже написали.
          Ответить
      • И, кстати, в половине if-ов фигурных скобок действительно нет.
        Ответить
    • я один это вижу?
      int is_file = 0;
      int is_att = 0;
      ...
      is_file = 1;  is_att = 1;
      ...
      
      if (is_file == 1)

      bool? не не слышал
      Ответить
    • объявление всех переменных в начале метода - это так по-паскалевски...
      Ответить
      • Это по сишевски. В паскале есть спец раздел для объявления переменных.
        Ответить
        • Разве в сишке не объявляют переменные непосредственно перед использованием?
          for (int i=0;i<10;i++)
          Ответить
          • В стандарте С89 все локальные переменные должны быть объявлены в начале блока, до любого выполнимого оператора.
            Ответить
          • в с99 -- да
            Ответить
      • да дело больше не в том, где определяются переменные, а как написано
        http://wiki.freepascal.org/Coding_style

        Keywords
        Write all keywords in lower case. There is no need to make them unreadble by writing them in upper case. Modern IDEs support syntax highlighting, so keywords will be easily recognizable.

        Spaces
        Don't use spaces around operators, colons, parentheses etc. e.g. write p:=p+i; instead of p := p + i ;.

        TAB characters
        Do not use TAB characters (ASCII HT, 0x09). There is no standard default TAB setting, so the look of source files using TAB characters will depend on client settings. This may result in a chaotic view of source files. Align by space characters (also see Indentation).

        Indentation
        Indentation size is always 2 space characters per level.
        Never place a begin on the same line as while..do/if..then/..., but always on its own line (and indent it compared to the while/if/...).

        Newlines
        Newlines are set as it is done by most Object Pascal programs (what does this mean? advice: avoid passive voice). Separate subroutines by three newlines, that is, put two blank lines between them.
        Ответить
        • > (what does this mean? advice: avoid passive voice)
          Фраза только для паскалистов. Сишник не пройдёт.
          Ответить

    Добавить комментарий