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

    +132

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    /// <summary>
    /// Zero matrix
    /// </summary>
    public void Zero()
    {
    	m11 = m12 = m13 = m14 =
    	m21 = m22 = m23 = m24 =
    	m31 = m32 = m33 = m34 =
    	m41 = m42 = m43 = m44 = 0;
    }

    Работа с матрицей 4 на 4

    Запостил: bazhenovc, 20 Декабря 2010

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

    • Осталось 10 дней, прежде чем я смогу пИсать под гостем. =)
      Ответить
    • Это всё к чему? Глобальные переменные и игнорирование массивов? Из какого контекста это выдрано?
      Ответить
      • Просто игнорирование массивов. Китайский код:)
        Ответить
    • элегантненько
      Ответить
    • сишарпненько
      Ответить
      • на сях можно точно так же высрать
        как и на крестах или яве
        whatever
        Ответить
        • Много чего много на чём можно, но вокруг каждого языка уже сформировалась своя культура программирования.
          Ответить
          • показать все, что скрытоСи - стрелять себе в ногу каждый раз
            Си++ - стрелять себе в ногу раз в неделю
            Си# - стрелять себе в ногу только пока учишься, а так же если ты или твой архитектор - удод
            Ответить
            • с каждой новой версией C# появляется все больше способов стрельнуть себе в ногу в автоматическом режиме

              я очень любил этот язык во времена 2.0.
              но теперь он стал гадким
              Ответить
              • бла-бла-бла из серии одна бабка сказала
                гадкая - это жава++
                Ответить
                • какая бабка?
                  Вам нравится extension methods например?
                  Ответить
                  • когда надо более-менее прозрачно дополнитель поведение стороннего класса - нравится

                    в рантайме вызов
                    void Do (this Foo f) { }
                    ничем не отличается от
                    static void Helper.Do(Foo f) { }
                    Ответить
                    • ага) прекрасный способ сделать говнокод
                      Ответить
                    • а где в 1ом способе ссылка на Helper?
                      Ответить
                      • ок

                        class Extensions {
                        public static void Do (this Foo f) { }
                        }

                        vs.
                        class Helper {
                        public static void Do (Foo f) { }
                        }


                        зато сахарок:

                        f.Doo();

                        vs.
                        Helper.Do(f);
                        Ответить
                        • о май гад. статичность становится условной, и в скобках у нас уже необязательно параметры, а намеки на контекст... может, оно где-то и удобно, но, скорее, больше запутывает. Лучше в этом месте все же олдскульным паттерном воспользоваться....
                          Ответить
                          • сахар он на то и сахар - что дело вкуса и/или удобства
                            вполне соглашусь что не тру ООП - с одной стороны
                            с другой - наличие кучи разных статических хелперов - код не украшает, архитектуру - не улучшает
                            Ответить
                            • ну вот и получается, что умные будут сахарку класть поменьше, что бы код не очень мистичным получался, а низшие приматы размахаются как на пехепе... В общем сахарная цель достигнута не будет
                              Ответить
                            • я думаю, раз уж гулять, то гулять до конца:

                              http://ru.wikipedia.org/wiki/Katahdin
                              Ответить
              • java 7 обещает быть не менее гадким. Хотя еще неизвестно в какую жопу его сунет бесконечно жадный оракул
                Ответить
                • а она уже такая
                  CLR хотя бы поддерживает генерике на уровне рантайма, а не на уровне компилятора, как Жава
                  ололо
                  пользователи пентиум2 и вин98 благодарны!
                  Ответить
                  • причем тут пентиум2?
                    жаба просто парилась об обратной совместимости
                    получилось конечно не красиво, да
                    Ответить
                    • а кому нужна обратная совместимость в ущерб кроеугольной вменяемости архитектуры всего языка?
                      только владельцу банкомата (и проч эмбедед) на пентиум2 (50 бакс за 100 штук), который хочет писать на ява но не хочет купить хотя бы пентиум4 (50 бакс за 10)
                      Ответить
                      • дадада, поменяли они формат, и все, значит, либо всем обязательно обновляться и переписывать всевсевсе коды, либо слать на йух сан и сидеть на старом.
                        в этом случае и в том и в том варианте сан сильно бы обосрался
                        Ответить
                        • а зачем после объявления о обратно-несовместимом обновлении - обновляться?
                          прога написана, работает.. но нет! я хочу обновиться (наш менеджер прочитал на хабре что это хорошо) но при этом хочу чтобы моя прога "back to USSR" от 99 года продолжала работать.
                          вы уж определитесь - вам старое ПО крутить или новую версию ставить?
                          мир ПО он такой. можно привести кучу примеров таких обратно-несовместимых обновлений. к примеру - оракл. многие сидят на 8, 9 или 10 потому что более позднии версии не поддерживают функцию х или требуют переписать модуль у
                          Ответить
                          • зачем обновляться?
                            ну ведь, кроме нормального обновления, бывают нужные. Например, крутилось у нас под вендой, но нам урезали бюджет и наехали с копирайтом - пришлось переехать на линухи. А скажем, раньше линухи не поддерживались, только последняя версия. Вынужденное обновление

                            Или другой, более правдоподобный пример. Вместе с такими серьезными обновлениями, как правило, идут и более мелкие - например, безопасности. И вендор заявляет: плиз апгрейд асап!
                            а мы сидим на старом, и ломай нас кто хошь?
                            Ответить
                      • да причем тут перформанс то? Может быть Вы не вкурсе, но на свете есть гигантские проекты на жабе, написанные в 1999м, которые никто не хочет переписывать, например)) Дотнету проще: на нем крупных проектов гораздо меньше (если не считать шарепоинт)
                        Ответить
                    • просто не хотели формат байткодников менять, есесна, с виртмашиной.
                      Ответить
                  • и все же у шарписта больше шансов выстрелить себе в ногу. Просто потому, что языковых возможностей больше.
                    Ответить
                    • ну в руках идиота даже палка - грозное оружие (которой он выстрелет себе в ногу выбьет себе глаз)
                      широта возможностей - это всё таки плюс, нежели минус, ага
                      Ответить
                      • ага, и поэтому отказались от множественного наследования, например.
                        джава до сих пор шла дорогой "лучше меньше возможностей, зато простой и понятный код" - поэтому там нет, например, перегрузки операторов. Вот это обещает измениться если не к 7 версии, то к 8, если джава не потонет вообще
                        Ответить
                        • угу. при чём шанс этого - если мудаки из оракл не очнутся - далеко не нулевой
                          Ответить
                  • А С++ поддерживает занятия дзеном с template`ами ;)
                    Ответить
                  • Зачем оставлять на выполнение то, что можно сделать во время компиляции?
                    Я про эти генерики в рантайме видел офигительный вброс на ГД, "замедление было незначительным, всего лишь в 5 раз".
                    Ответить
                    • потому что если генерики только во время компиляции - то это сахар и в них нет никакого смысла
                      а смысл - в type safety. и оно нужно в рантайме!
                      выброс на ГД - он на то и выброс. "на заборе написано а там дрова". если бы 2.0 был медленее 1.1 в 5 раз - мы бы жили в другом мире, и уже давно
                      Ответить
                      • Гугли ОП (обобщённое программирование) и будет тебе счастье:)
                        Ответить
                      • > то это сахар и в них нет никакого смысла

                        В них есть смысл не копировать одну процедуру 10 раз для разных типов. Ты посмотри видео со Степановым, кстати, он там местами умные вещи толкает.

                        > а смысл - в type safety

                        ЧТО? В сирешётке нету строгой типизации на стадии компиляции?!
                        Ответить
                      • Генерики говно и с шаблонами несравняться.
                        Ответить
                        • "Генерики говно и с шаблонами не сравнятся"
                          либо
                          "Генерики говно и им с шаблонами не сравняться".
                          Вообще шаблоны круче - прямо функциональный язык, выполняющийся во время компиляции.
                          Ответить
                        • вот смотрю на это и умиляюсь: шаблоны то, генерики это - как макаки красным задом вертите, но до сих пор cannot into n-rank impredicative polymorphism. но оно и хорошо..
                          Ответить
              • кстати, назови хотя бы 1
                Ответить
                • linq to sql, позволяющий писать веб-приложения, вешающие БД
                  extension methods, превращающий ООП в фикцию
                  мало?)
                  Ответить
                  • веб 2.0+ вообще мало чем ООП - что рельсы, что ASP.NET MVC, и проч
                    Ответить
                    • а у нас в жаба-struts вполне себе ооп)
                      и в гвт тоже ооп, если писать правильно.
                      и при этом веб 2.0

                      но хорошо, что Вы признали тот факт, что .NET технологии двигаются от мира ООП в мир (извините) говнокода и ПХП

                      Ответить
                      • я бы назвал это "миром ASP"
                        да, ASP.NET MVC это ASP.NET в прямом смысле этого слова
                        а я его и не люблю, этот MVC
                        WebForms + URL rewrite = вполне себе тру
                        Ответить
                        • показать все, что скрытоООП это немного другой уровень абстракции, лишь способ, сказать то же самое, но немного по другому, типа моя бабушка скинхед, анонимус нюхает залупу, говнокод ацкое гавно
                          Ответить
                        • WebForms перемешивает логику и представление. Никто никогда не тестирует логику веб-форм юнит тестами.
                          Ответить
        • ...but it would gain a new language, one which is in spirit virtually the same as Visual Basic but with the C-like syntax of curly braces and semicolons. And best of all, the new Visual Basic/C hybrid would be called Visual C#, so you would not have to tell anyone you were a "Basic" programmer any more.

          это я к чему... мне показалось или жжение в нижней части спины?
          Ответить
          • показать все, что скрытоДжоел поныл-поныл а потом встал во главу колонну славящих C#
            так что не засчитано
            Ответить
            • возможно вы не заметили, я процитировал не славословия, а весьма бородатое высказывание, которое от времени и промискуитета Спольского актуальности не потеряло.
              или вдруг случился набег в CLR выпускников профильных кафедр, о котором я не знаю? а может выходцы с VB внезапно стали проявлять невероятный интеллект?
              Ответить
    • быдлокодерски
      Ответить
    • Обнуление матрицы. Хорошо оптимизируется компилятором.
      Ответить
    • А про массивы мы разве не знаем? Или чем больше буковок, тем заказчик больше кипятку с сухарями нальёт?
      Ответить
    • а вот скажет заказчик, хочу с матрицами не только 4х4, но и 100х100 работать одновременно.... = )
      Ответить
      • m100100 = ...
        Ответить
      • заказчик учитель
        Ответить
        • а че, у меня был один такой, вьедливый хер. Он мои прожки так лопатил вдоль и поперек, нарочно, сука, ломал. То есть, если прожка остается жива после его терзаний, то ей можно медаль давать, "проверено, насекомых нет!" и на госслужбу на 10 лет
          Ответить
    • показать все, что скрытовсем въебал по минусу черти
      Ответить
    • Это реализация матриц из директХ. Весьма хорошо оптимизируется самым говняным компилятором. Хотя говно, да.
      Ответить
      • Не, это софтварный растеризатор :)
        Ответить
        • Но в директиксе также сделано. Может даже код строчка в строчку скопипастен. Даже такое же выравнивание.
          Ответить
          • Очень может быть, с директиксом знаком весьма поверхностно
            Ответить
      • ИМХО в современных компилях надо запилить проверку на такое вот говно, в профилактических целях. Чтобы не размножалось!
        Ответить
        • показать все, что скрытоне знаю почему, но у меня такое чувство будто я вас в рот ебал
          Ответить
          • Е - бал это двойка по американской системе оценок школьникам. Садись, два тебе, компренда!
            Ответить
          • "Ты - хуй", - как бы невинный способ поддержать беседу?
            Ответить
            • ну не о погоде же говорить
              Ответить
            • Поймите, Компренду. Ему одиноко. Больно. Друзей нет. Он плачет. Пытается с Вами заговорить. У него не получается, но он не сдаёться. Когда увидите его в следующий раз на говнокоде. Скажите ему доброе слово и он смягчится. И в следующий раз накатает кучу хорошего доброго и годного говнокода, приносящего смех и радость людям. :)
              Ответить
              • > сдаёться
                детектед.

                и вообще, шутка, которая появилась на collegehumor уже уныла
                Ответить
              • простите, но хуйня. Эмпирически установлено, что быдло неспособно к высоким чувствам
                Ответить
                • Не нужно вешать клеймо на человека. Вы его не видели. Может он чувственный и ранимый. А лишь жизнь и некоторые отклонения сделали его таким. Или у Вас телепатический чувство-ренген-аппарат? Можете предсказывать судьбу удалённо по емайл адресу? Снимаете порчу по цифровой подписи?
                  Ответить
                  • тип того. не совсем оно, конечно, но кой чего соображаю
                    Ответить
                  • > он чувственный
                    гомосятина детектед

                    между прочим, уже каждый слоупок посмотрел на его школьную фоточку
                    Ответить
                    • >гомосятина детектед
                      Скажите, Вы от компренды далеко ушли по уровню развития?
                      Ответить
                      • дебил, то слово - "чувствительный", "чувственный" означает нежную еблю.
                        -- К.О.

                        PS: тупая школота...
                        Ответить
                    • >посмотрел на его школьную фоточку
                      Педофилия, в наше время, уголовно наказуема.
                      Ответить
                      • и в этом был самый цимес, чувственный вы наш
                        Ответить
                      • Педофил - и - я
                        Ответить
                        • надо бы говнокод номинировать как образовательный сайтик :)
                          может и распил какой от мин. образования выйдет
                          Ответить
                          • Ога, обучение программированию + курсы Великого Русского Языка в подарок.
                            Ответить

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