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

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

    −3

    1. 1
    Пидарашке, хуле вам нада?

    Antifriz_otrabotanyi, 05 Декабря 2019

    Комментарии (8)
  3. Assembler / Говнокод #26033

    −1

    1. 1
    2. 2
    Перекат
    http://govnokod.ru/18591

    Этот петух так и не выложил ответ.

    OCETuHCKuu_nemyx, 18 Ноября 2019

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

    +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
    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
    QVariant AtdItem::data(int column, int role) const {
    	if (role == Qt::DisplayRole || role == Qt::EditRole || role == Qt::ToolTipRole) {
    		if (column == 0)
    			return m_name;
    		if (column == 1)
    			return m_id;
    		if (column == 2)
    			return m_shortName;
    		if (column == 3)
    			return m_code;
    		if (column == 4)
    			return m_code_alpha_2;
    		if (column == 5)
    			return m_capital;
    		if (column == 6)
    			return m_type_id;
    		if (column == 7)
    			return m_number;
    		if (column == 8)
    			return m_dir_id;
    		if (column == 9)
    			return m_area;
    		if (column == 10)
    			return m_pop;
    		if (column == 11)
    			return m_info;
    		if (column == 12)
    			return m_reduction_name;
    		if (column == 13)
    			return m_scheme_name;
    		if (column == 14)
    			return m_num_on_scheme;
    		if (column == 15)
    			return m_code_alpha3;
    		if (column == 16)
    			return m_code_hasc;
    		if (column == 17)
    			return m_level;
    	}
    
    	if (role == Qt::UserRole) {
    		return m_id;
    	}
    	return QVariant();
    };

    уроки по switch && enum будут после обеда

    mvngr, 15 Ноября 2019

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

    +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
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    class Container:
        def __init__(self, liquid):
            self.liquid = liquid
    
        def look_inside(self):
            return f"{self.liquid} in container"
    
        @classmethod
        def create_with(cls, liquid):
            return cls(liquid)
    
    
    class Bottle(Container):
        def look_inside(self):
            return f"bottle full of {self.liquid}"
    
    
    class Glass(Container):
        def look_inside(self):
            return f"A glass of {self.liquid}"
    
    
    for c in (c.create_with("beer") for c in [Glass, Bottle]):
        print(c.look_inside())

    ми маємо class polymorphism

    DypHuu_niBEHb, 23 Октября 2019

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

    +1

    1. 1
    public int HowManyHoursWillGoBackForConvertingUkToUtc(DateTime ukTime) => IsAlreadyGoForward(ukTime) ? 1 : 0;

    когда название говорит само за себя

    govnoBet, 17 Октября 2019

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

    +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
    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
    //Создадим типизированные колонки в ТЗ
    	Запрос = Новый Запрос("ВЫБРАТЬ
    	                      |	CRM_ЗначенияРеквизитовТрафика.РеквизитТрафика КАК РеквизитТрафика,
    	                      |	CRM_ЗначенияРеквизитовТрафика.ЗначениеРеквизита КАК ЗначениеРеквизита,
    	                      |	CRM_ЗначенияРеквизитовТрафика.ИдентификаторТрафика
    	                      |ИЗ
    	                      |	РегистрСведений.CRM_ЗначенияРеквизитовТрафика КАК CRM_ЗначенияРеквизитовТрафика
    	                      |ГДЕ
    	                      |	CRM_ЗначенияРеквизитовТрафика.ИдентификаторТрафика ЕСТЬ NULL");
    	РеквизитыТрафика = Запрос.Выполнить().Выгрузить();
    	//Удалим "лишние записи" на всякий случай
    	РеквизитыТрафика.Очистить();
    	
    	//Заполним реквизиты трафика
    	
    	//Логин клиента из онлайнконсультанта
    	НовоеСвойство = РеквизитыТрафика.Добавить();
    	НовоеСвойство.ИдентификаторТрафика = Идентификатор;
    	НовоеСвойство.РеквизитТрафика = ПланыВидовХарактеристик.CRM_РеквизитыТрафика.ОнлайнКонсультантЛогинКлиента;
    	НовоеСвойство.ЗначениеРеквизита = Описание.ЛогинКлиента;
    
    	//Запись в регистр
    	НЗ = РегистрыСведений.CRM_ЗначенияРеквизитовТрафика.СоздатьНаборЗаписей();
    	НЗ.Отбор.ИдентификаторТрафика.Установить(Идентификатор);
    	НЗ.Прочитать();
    	НЗ.Загрузить(РеквизитыТрафика);
    	Нз.Записать();

    Зачем столько раз читать регистр не понятно. Для чего вообще нужна типизированная таблица если используется прочитать? Одни вопросы.

    NioGoth, 27 Сентября 2019

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

    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
    internal void OnItemSaved(object sender, EventArgs args)
    {
    Sitecore.Diagnostics.Log.Error("OnItemSaved: Fired", new Exception());     
    var eventArgs = args as Sitecore.Events.SitecoreEventArgs;
    Sitecore.Diagnostics.Assert.IsNotNull(eventArgs, "eventArgs");
    
    if (eventArgs == null) return;
    
    var item = eventArgs.Parameters[0] as Sitecore.Data.Items.Item;
    var currItem = item;
    
    Sitecore.Diagnostics.Log.Error("OnItemSaved: " + item.Name, new Exception());     
    
    TaxonomyBaseItem i = item;
    
    if (currItem != null)
    {
        try
        {
            while (item != null && item.TemplateID.ToString() != TopicSectionFrontPageItem.TemplateId)
            {
                item = item.Parent;
            }
    
            if (item == null) return;
    
            Sitecore.Diagnostics.Log.Error("OnItemSaved: " + item.Name, new Exception());
            
            if (!i.TopicTaxonomy.ListItems.Contains(item))
            {
                Sitecore.Diagnostics.Log.Error("OnItemSaved: Doesn't contain it", new Exception());     
    
                Sitecore.Data.Fields.MultilistField mfield = currItem.Fields["Topic Taxonomy"];
                if (!mfield.Contains(item.ID.ToString()))
                {
                    using (new Sitecore.SecurityModel.SecurityDisabler())
                    {
                        currItem.Editing.BeginEdit();
                        if (currItem.Fields["Topic Taxonomy"].Value == string.Empty)
                        {
                            currItem.Fields["Topic Taxonomy"].Value += item.ID.ToString();
                        }
                        else
                        {
                            currItem.Fields["Topic Taxonomy"].Value += "|" + item.ID.ToString();
                        }
                        Sitecore.Diagnostics.Log.Error("OnItemSaved: " + currItem.Fields["Topic Taxonomy"].Value, new Exception());     
    
                        currItem.Editing.EndEdit();
                    }
                }
            }    
        }
        catch (Exception ex)
        {
            Sitecore.Diagnostics.Log.Error("OnItemSaved: " + ex.Message, new Exception());        
        }        
    }

    Когда ты хочешь чтобы твои логи были заметны: Sitecore.Diagnostics.Log.Error("OnItemSa ved: " + item.Name, new Exception());
    И когда никому не хочешь рассказывать об эксепшенах:
    catch (Exception ex)
    {
    Sitecore.Diagnostics.Log.Error("OnItemSa ved: " + ex.Message, new Exception());
    }

    VolAnder, 25 Сентября 2019

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    ButtonCustom {
        visible: !cyrcleProgress.visible ? true : false
        ...
    }

    FrontlineReporter, 02 Сентября 2019

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

    +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
    13. 13
    14. 14
    15. 15
    namespace detail
    {
    template <typename Function, typename Tuple, std::size_t... i>
    void applyForEach(Function&& f, Tuple&& t, std::index_sequence<i...>)
    {
      (static_cast<void>(std::invoke(f, std::integral_constant<std::size_t, i>{}, std::get<i>(t))), ...);
    }
    } // namespace detail
    
    template <typename Function, typename Tuple>
    void applyForEach(Tuple&& tuple, Function&& function)
    {
      using Indexes = std::make_index_sequence<std::tuple_size_v<Tuple>>;
      detail::applyForEach(std::forward<Function>(function), std::forward<Tuple>(tuple), Indexes{});
    }

    Строка 6. Мы тут сделали синтаксис для fold expression, только вам его не дадим: у вас документов нет.

    Clang: https://wandbox.org/permlink/lNOFu1sOV9bA2LJF
    GCC: https://wandbox.org/permlink/yqeiYHTgZOz9NkkJ

    Elvenfighter, 07 Августа 2019

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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Note
    pytest by default escapes any non-ascii characters used in unicode strings for the parametrization because it has several downsides. If however you would like to use unicode strings in parametrization and see them in the terminal as is (non-escaped), use this option in your pytest.ini:
    
    [pytest]
    disable_test_id_escaping_and_forfeit_all_rights_to_community_support = True

    Прыщебляди не могут в юникод. Капча ujox согласна.

    syoma, 31 Июля 2019

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