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

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

    +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
    public enum DataBits {
    	FIVE(SerialPort.DATABITS_5),
    	SIX(SerialPort.DATABITS_6),
    	SEVEN(SerialPort.DATABITS_7),
    	EIGHT(SerialPort.DATABITS_8);
    	
    	private final int value;
    	
    	private DataBits(final int value) {
    		this.value = value;
    	}
    	
    	public int getValue() {
    		return value;
    	}
    	
    	@Override
    	public String toString() {
    		return Integer.toString(value);
    	}
    }

    Завернули энум старого образца в нормальный.

    someone, 17 Февраля 2012

    Комментарии (0)
  3. Pascal / Говнокод #8718

    +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
    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
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    {...}
    type
    a=(
    january,
    february,
    march,
    {--------------}
    april,
    may,
    june,
    {--------------}
    jule,
    august,
    september,
    {--------------}
    october,
    november,
    december
                 );
    b=(
    seаson1,
    seаson2,
    seаson3,
    seаson4
               );
    c=(
    winter,
    spring,
    summer,
    autumn
              );
    {...}
    function d(e:a):b;
             begin
                  case e of
                           january,
                           february,
                           march
                                     :d:=seаson1;
                           april,
                           may,
                           june
                                     :d:=seаson2;
                           jule,
                           august,
                           september
                                     :d:=seаson3;
                           october,
                           november,
                           december
                                     :d:=seаson4
                  end
             end;
    function f(g:a):c;
             begin
                  case g of
                           december,
                           january,
                           february
                                      :f:=winter;
                           march,
                           may,
                           april
                                      :f:=spring;
                           june,
                           jule,
                           august
                                      :f:=summer;
                           september,
                           october,
                           november
                                      :f:=autumn
                  end
             end;
    begin
    {...}
    end.

    Сделал на этой неделе в первом часу ночи.

    dos_, 04 Декабря 2011

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

    +112

    1. 1
    result = result += (od.UnitPrice * od.Quantity);

    Источник:
    http://msdn.microsoft.com/ru-ru/library/ff852066.aspx#Y0

    ramzes_2, 19 Ноября 2011

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

    +112

    1. 1
    ТАЩИТЕ ЛЕСТНИЦУ!

    alexoy, 19 Сентября 2011

    Комментарии (57)
  6. Pascal / Говнокод #6676

    +112

    1. 1
    2. 2
    3. 3
    while (FilePos(SrcFile) <> FileSize(SrcFile)) do begin
        BlockRead(SrcFile,Res,1);
    ...

    Пытаюсь одному объяснить кое-что из основ. Мне плохо от его перлов.
    Нехорошо смеяться над новичками, но я уже не выдержал...

    http://www.gamedev.ru/flame/forum/?id=147021&page=10#m148

    TarasB, 15 Мая 2011

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

    +112

    1. 1
    2. 2
    3. 3
    4. 4
    foreach (int i in new int[] {1, 2, 3, 4, 5}) 
    {
         //Какие-то действия
    }

    Правильный for в C#
    http://2lx.ru/2010/03/pravilnyj-for-v-c/

    zheka, 04 Мая 2011

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

    +112

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    DirectoryInfo dir = new DirectoryInfo(@"C:\Users\origLocation\");
    DirectoryInfo destDir = new DirectoryInfo(@"C:\Users\origLocation\destLocation\");
    FileInfo[] newVerFiles = dir.GetFiles("*.TXT");
    foreach (FileInfo newVerFile in newVerFiles)
    {
        Regex regex = new Regex("\\d+-new-ver.TXT", RegexOptions.IgnoreCase);
        if (regex.IsMatch(newVerFile.Name))
        {
            newVerFile.MoveTo(destDir.FullName);
        }
     }

    rusco_developer, 02 Марта 2011

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

    +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
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    static Concept()
            {
                s_deserialize = new Dictionary<string, deserializationHandler>
                                    {{"1.0", (deserialize_1_0)}};
            }
    
            private static void serialize(Concept concept, BinaryWriter writer)
      {
                writer.Write ( concept.Name );
                writer.Write ( concept.Score );
    
                writer.Write ( concept.Documents.Count );
                foreach (var doc in concept.Documents)
                    writer.Write(doc.ToString());
    
                writer.Write ( concept.Nested.Count );
                foreach (var nested in concept.Nested)
                    serialize ( nested, writer );
    }
    
           public static List<Concept> Deserialize(Stream stream)
            {
                using (var reader = new BinaryReader(stream, Encoding.UTF8))
                {
                    var version = reader.ReadString();
                    if (!s_deserialize.ContainsKey(version))
                        throw new NotSupportedException(String.Format("Unsupported version of format. Version: {0}", version));
    
                    var concepts = new List<Concept>(50);
                    s_deserialize[version](null, concepts, reader);
                    return concepts;
                }
            }
    
    private delegate void deserializationHandler(Concept parent, IList<Concept> concepts, BinaryReader reader);
    
    private static readonly Dictionary<string, deserializationHandler> s_deserialize;
    
      private static int s_lastId = 0;
           private static int getNextConceptId()
            {
                if (s_lastId == Int32.MaxValue)
                    s_lastId = 0;
                return System.Threading.Interlocked.Increment(ref s_lastId);
            }
    
    private static void deserialize_1_0(Concept parent, IList<Concept> concepts, BinaryReader reader)
    		{
                for (var i = reader.ReadInt32(); i > 0; i--)
    			{
                    var c = new Concept(reader.ReadString(), reader.ReadDouble(), parent);
    				concepts.Add(c);
    
                    for (var d = reader.ReadInt32(); d > 0; d--)
                        c.Documents.Add(Convert.ToInt32(reader.ReadString()));
    
    				deserialize_1_0(c, c.Nested, reader);
    			}
            }
    }

    Человек в очередной раз изобрел свой велосипед, на этот раз как сериализовать _свои_ классы - с поддержкой версий! По тому что некоторые переменные в классе были помечены [NonSerialized] было похоже что он что то слышал про уже имеющиеся но решил как обычно что самописный - всегда лучше. Но аттрибуты оставил - на всякий пожарный :)

    eval_2009, 13 Января 2011

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

    +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
    public static class EntryPoint
        {
            private class NotFoundException : ApplicationException
            {
                public FoundException(int id, SourceType type)
    
                private SourceType Type { get; set; }
                private int Id { get; set; }
            }
    
          private class InProgressException : ApplicationException
            {
                public InProgressException(int id, SourceType type)
                {
                    Type = type;
                    Id = id;
                }
    
                private UserViewSourceType Type { get; set; }
                private int Id { get; set; }
            }
    
         public static void Analyze(SourceType type, IEnumerable<int> dataId)
            {
                try
                {
                    initialize(type, dataId);
                }
                catch (InProgressException)
                {  
    // немного говнокода
                }
                catch (NotFoundException)
                {
    // немного говнокода
                }
    }

    Для того что бы внутри статического класса между двумя процедурами наладить связь (Analyze - initilize) человек определил два новых типа exceptions (private) и дал им дополнительные свойства которые нигде не используются. Exceptions эти больше нигде кроме initialize не кидаются и нигде кроме Analyze не ловятся. Ну и initialize больше ниоткуда кроме Analyze не вызывается.
    В итоге имеем два лишних класса и тучу кода который можно без помех удалить, чем я собственно и занимаюсь :)

    eval_2009, 05 Января 2011

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

    +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
    private void RefreshNewsList()
            {
                List<NewsObject> tempNewsList = new List<NewsObject>();
                tempNewsList.AddRange(lstOldNews.FindAll(delegate (NewsObject newsOld) 
                {
                    if (lstDeletedNewsIDs.Contains(newsOld.ID) || -1 == lstUpdatedNews.FindIndex(delegate(NewsObject newsUpdate)
                    {
                        if (newsUpdate.ID == newsOld.ID)
                            return true;
                        else
                            return false;
                    }))
                        return false;
                    else
                        return true;
                }));
                tempNewsList.AddRange(lstNewNews);
                tempNewsList.AddRange(lstUpdatedNews);
    
                lstNewsList.Items.Clear();
                lstNewsList.Items.AddRange(tempNewsList.ToArray());
            }

    не охота было лишние переменные использовать... ))) только что написал )) чудо родилось в 07,12,2010 16:44 ))) видно что пора домой..

    Maxim546, 07 Декабря 2010

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