1. Список говнокодов пользователя pushistayapodmyshka

    Всего: 17

  2. C# / Говнокод #18198

    +142

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    // ...
    
    Action updatingLoadedItemsList = null;
    
    foreach (Item loadedItem in loadedItems)
        if (loadedItem.Id == currentItem.Id)
            updatingLoadedItemsList = () => loadedItems.RemoveAt(loadedItems.IndexOf(loadedItem));
    
    if(updatingLoadedItemsList != null)
        updatingLoadedItemsList.Invoke();
    	
    // ...

    pushistayapodmyshka, 19 Мая 2015

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

    +147

    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
    public static void Unsubscribe
    <
    	T1,		T2,		T3,		T4,
    	T5,		T6,		T7,		T8,
    	T9,		T10,		T11,		T12,
    	T13,		T14,		T15,		T16
    >
    (
    	TKey eventKey,
    	Action
    	<
    		T1,		T2,		T3,		T4,
    		T5,		T6,		T7,		T8,
    		T9,		T10,		T11,		T12,
    		T13,		T14,		T15,		T16
    	> handler
    )
    { handlers[eventKey] -= handler; }

    Боль.

    pushistayapodmyshka, 30 Апреля 2015

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

    +780

    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
    public class B
    {
        private readonly List<M> ms = new List<M>(); 
    
        // ...
    
        public void Match(M m) { ms.Add(m); }
    
        public int IndexOf(M m) { return ms.IndexOf(m) == 0 ? 0 : 1; }
    
        // ...
    }
    
    public class M
    {
        // ...
    
        public void Match(B b)
        {
            try { b.Match(this); }
            catch (Exception e)
            {
                // ...
            }
        }
    
        // ...
    }

    Угадай песню по говнокоду. Сложность: 2/10.
    Можете минусовать, в общем-то.

    pushistayapodmyshka, 23 Марта 2015

    Комментарии (8)
  5. Python / Говнокод #17738

    −113

    1. 1
    escape_cats = [cat_id for cat_id, values in cats.iteritems() if any([values[1] == supercat or cat_id == supercat for supercat in escape_supercats])]

    Избегание котов.

    pushistayapodmyshka, 06 Марта 2015

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

    +136

    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
    private static string RemoveInvalidChars(string source)
    {
        foreach (var c in invalidChars)
            source = source.Replace(c.ToString(), "");
    
        return source;
    }
    
    public static string Validate(string source)
    {
        source = RemoveInvalidChars(source);
    
        return source;
    }

    pushistayapodmyshka, 02 Февраля 2015

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

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public static IEnumerable<T> Remove<T>(this IEnumerable<T> source, T key)
    {
        return source.Where(element => !element.Equals(key));
    }
    
    public static IEnumerable<string> Remove(this IEnumerable<string> source, string key)
    {
        return source.Where(element => element != key);
    }

    Немного велосипедостроения.

    pushistayapodmyshka, 30 Января 2015

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

    +135

    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
    private static string GetMultipartFileContentType(string file)
    {
        var ext = file.Split('.').Last().ToLower();
    
        var types = new[]
        {
            new[] {"application/envoy","evy"},
            new[] {"application/fractals","fif"},
            new[] {"application/futuresplash","spl"},
            new[] {"application/hta","hta"},
            new[] {"application/internet-property-stream","acx"},
            new[] {"application/mac-binhex40","hqx"},
            new[] {"application/msword","doc"},
            new[] {"application/msword","dot"},
            new[] {"application/octet-stream","*"},
            new[] {"application/octet-stream","bin"},
            new[] {"application/octet-stream","class"},
            new[] {"application/octet-stream","dms"},
            new[] {"application/octet-stream","exe"},
            new[] {"application/octet-stream","lha"},
            new[] {"application/octet-stream","lzh"},
            new[] {"application/oda","oda"},
            // Многобукв...
            new[] {"x-world/x-vrml","xof"}
        };
    
        var toReturn = types.FirstOrDefault(t => t[1] == ext);
    
        return toReturn != null ? toReturn[0] : "application/octet-stream";
    }

    pushistayapodmyshka, 05 Января 2015

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

    +130

    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
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
    
        private void button1_Click(object sender, EventArgs e)
        {
            var alldir = Directory.GetDirectories(SearchIn.Text);
            foreach (var s in alldir)
            {
                if(s.Split('\\').Last().IndexOf(SearchFor.Text) != -1)
                {
                    string parent = Directory.GetParent(s).FullName;
                    string thisfolder = s.Split('\\').Last().Replace(SearchFor.Text, ReplaceTo.Text);
                    string fullpath = parent + "\\" + thisfolder;
                    Directory.Move(s, fullpath);
                }
            }
        }
    
        private void SearchIn_DoubleClick(object sender, EventArgs e)
        {
            if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                SearchIn.Text = folderBrowserDialog1.SelectedPath;
            }
        }
    }

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

    pushistayapodmyshka, 18 Декабря 2014

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

    +133

    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 static T ElementAtReverse<T>(this IEnumerable<T> source, int index)
    {
        while (true)
        {
            var array = source as T[] ?? source.ToArray();
    
            var elementsCount = array.Count();
    
            if (index < elementsCount || elementsCount == 0)
                return array.ElementAt(elementsCount - 1 - index);
    
            source = array;
            index = index % elementsCount;
        }
    }

    pushistayapodmyshka, 18 Декабря 2014

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

    +98

    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
    class CSVSave
    {
        char separator = ';';
        
        public void SaveCSV(string pathfile, IEnumerable<Product> list )
        {
            using (var sw = new StreamWriter(pathfile, false, Encoding.GetEncoding(1251)))
            {
                foreach (var prod in list)
                {
                    string line =
                        prod.Manufacturer + separator +
                        prod.Name + separator +
                        prod.Type + separator +
                        prod.Url + separator +
                        prod.Imgurl + separator +
                        prod.Sex + separator +
                        prod.Volume + separator +
                        prod.Box + separator +
                        prod.Price + separator +
                        prod.availability + separator +
                        prod.Desk;
    
                    if ((prod.Family != null) || (prod.QuantityPurchased != null) || (prod.Application != null) || (prod.Flavornotes != null) || (prod.Production != null)) line += separator;
                    if (prod.QuantityPurchased != null) line += prod.QuantityPurchased + separator;
                    if (prod.Family != null) line += prod.QuantityPurchased + separator;
                    if (prod.Production != null) line += prod.QuantityPurchased + separator;
                    if (prod.Application != null) line += prod.QuantityPurchased + separator;
                    if (prod.Flavornotes != null) line += prod.QuantityPurchased + separator;
    
                    line=line.Trim(separator);
    
                    sw.WriteLine(line);
                }
                sw.Close();
            }
        }
    }

    pushistayapodmyshka, 17 Декабря 2014

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