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

    +114

    1. 1
    2. 2
    3. 3
    //request.IsSecureConnection и TargetHttps - булевы переменные
    
    if (!(request.IsSecureConnection ^ TargetHttps))

    вместо if (request.IsSecureConnection == TargetHttps)

    Запостил: mozg_raka, 31 Июля 2013

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

    • Старый добрый асемблероеб детектед - XOR то работает БЫСТРЕЕ!)))
      Особенно на булеанах в шарпике - комп ну просто летает!)))

      Думаю нужно было показать условный блок - было бы эпично если там всякая охинея в 3ых циклах
      Ответить
      • Бинарные операторы ^ являются предопределенными для целых типов и bool. (...) Для операндов bool оператор ^ выполняет операцию логического исключающего OR операндов (...)
        http://msdn.microsoft.com/ru-ru/library/zkacc7k1.aspx
        Ответить
        • Как будто бы асемблероеб об этом знает )
          Ответить
    • bool xor традиционный )
      Ответить
    • Не совсем в тему, но все же спрошу - посоветуйте учебник для перехода на джаву с шарпика ^_^
      Ответить
      • Там нет LINQ и куча своих граблей.
        Ответить
        • Я в курсе. Делегатов нет, линка нет (не очень то и хотелось), а еще совсем другие библиотеки (кэп).
          Вопрос в другом - какая книжка оптимально проходит, для человека, который более-менее знает ООП и знаком с ширпиком?
          Философия java 4-ое издание?)))
          Ответить
          • зачем оно тебе? вокруг куча других языков.
            порог вхождения выше, а сахара ощутимо меньше.
            EJ, JCP, Generics FAQ [Angelika Langer]
            Ответить
            • >зачем оно тебе? вокруг куча других языков.
              >порог вхождения выше, а сахара ощутимо меньше.

              что предложите?
              Ответить
              • Раз уж интересует JVM, то Scala. А побочно изучишь жабу.
                Ответить
                • Но Скала - это плохо замаскированый МЛ, живущий в ВМ не поддерживающем хвостовую рекурсию, и без циклов... это как купаться в сапогах, но на Канарах. Быстро опротивит - а что тогда? ОКамл? С недоделанным полиморфизмом, минималистичной стандартой библиотекой? Горсткой приверженцев? Естесственно, Хаскел побогаче будет... А что дальше? - а дальше ничего, пустота и разочарование.
                  Так что не слушай их, бери пример с Тараса: Маздайка ХР еще фурычит? И еще лет десять проживет. Мелкософт подписался Визуальную студию поддерживать пока все современные внидовз-программисты на пенсию не уйдут - зачем эти метания?
                  А в Визуальной студии знаешь как можно жить? Нет - ну вот, так я тебе скажу. Мой тимлид, закаленный Визуальной студией, 20 лет на одном месте, а изменить уровень вербозности лога компиляции самостоятельно не может - что уж и говорить про хеллоуворд на МСБилде. Ты просто один раз мануал по Визуальной студии прочитай - программист на всю жизнь. Зарплата - норм, футбол по субботам и горячий кофе в постель, чего еще нужно-то?
                  Ответить
                  • Да, все языки кроме CL говно, мы в курсе.
                    Ответить
                    • Да нет, все хуже:
                      http://img5.joyreactor.cc/pics/post/%D1%81%D0%BE%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5-%D1%81%D0%B5%D1%82%D0%B8-%D0%B1%D0%BE%D0%BB%D1%8C-%D0%BF%D1%83%D1%81%D1%82%D0%BE%D1%82%D0%B0-574575.jpeg

                      Но есть еще Дилан.
                      Ответить
                  • А фиг его знает что нужно - я в творческих исканиях. На Java большенство мобильных приложений создается, а шарпик - для виндоусных приложений - полезно было бы и то и то знать, в добавок концепции схожие( шарп слизал с джавы).
                    Ходят слухи, что Джава уже не та, что оракл положил на язык большой и толстый, а мелкософт шарп будет продвигать в любом случае.
                    Да и шарп местами побогаче будет - небезопасный код, динамичные типы, сахарок всякий
                    Ответить
                    • Самое время учить Ц++!
                      Ответить
                    • Лямбды, замыкания, линкуэ, async - асинхронный код с ним писать должно быть на порядок проще, хоть и не пробовал.
                      Ответить
                      • async на порядок проще тред-пула с фьючерсами?
                        Ответить
                        • Понятия не имею, что такое фьючерсы (слово слышал), как я понял - async - это пердолишь слово async перед каждой блокирующей операцией - и ее можно использовать в асинхронном коде без всяких коллбеков.
                          Ответить
                          • Ну на хабре как-то была статья (http://habrahabr.ru/post/185706/), в которой обсуждался этот async. Я так понял, мелкософтовцы просто запилили унылую урезанную версию корутин на базе простенькой стейт-машины. Автор уверял, что бустовый кококорутин рвёт сишарпный сахар в клочья. И даже показывал тривиальную реализацию подобного сахара на крестах. Но я как-то не проникся.

                            А фьючерсы это крайне простая и удобная вещь. Они есть почти везде. Даже в 11 стандарте крестов (там есть и std::async, только он делает немного другое).
                            Ответить
                    • Кстати, шарпик, по крайней мере то, что не имеет отношение к гую, есть не только под винду.
                      Ответить
                      • скалка, вроде, в дот-нет умеет компиляться.
                        Ответить
                      • Я однажды собрал dotGNU под ДОС. После этого я ничему не удивляюсь.
                        Ответить
                        • Чем отличается от моно?
                          Ответить
                          • Автором, некоторыми деталями, зачастую ненужными (типа компилятора Брейнфака), и тем, что Mono, в отличие от dotGNU, пока ещё жив.
                            Ответить
                  • Сегодня прочитал и не поверил глазам:

                    "Хотя C# сам по себе очень похож на java, есть ряд существенных преимуществ. В частности, язык java не предназначен для работы в среде dot.net"

                    То есть по мнению Microsoft преимущество C# над java заключается в том, что C# они поддерживают, а Java - нет)
                    Ответить
                    • по мнению Microsoft преимущество C# над java заключается в том, что C# они контроллируют, а java - нет.
                      Ответить
                      • >преимущество C# над java
                        Скорее фатальный недостаток java.
                        Ответить
                    • А J# разве не было?
                      Ответить
                      • J# был мутантом - даже Microsoft от него открестился.

                        Шарпик получился удачнее, да и Sun из-за него не судилась.
                        Ответить
                    • > В частности, язык java не предназначен для работы в среде dot.net

                      IKVM
                      Ответить
                      • Ну не майкрософт писали - не тру)

                        Авторы явно кормятся с их лапки
                        Ответить
                • > А побочно изучишь жабу
                  и удивишься тому, как быстро компилится жаба по сравнению со Scala
                  Ответить
                  • всё же 20 лет активного ынтерпрайза не прошли даром для жабы, скале еще догонять и догонять
                    Ответить
                    • Жабаконпейлятор с самого начала был шутрым, ибо туп как пробка. ЫнтерпрайзЪ в основном повлиял на производительность и обширность библиотек.
                      А конпейлятор Scala год от года всё сложнее и сложнее, врядли он будет особо ускоряться.
                      Ответить
                      • > на производительность и обширность библиотек
                        А также на монструозность большинства из них :)
                        Ответить
                    • Так там компиялятор не умеет в оптимизации. И инклудов нет. И сам язык намного проще. Поэтому и собирает моментально, в отличие от крестов ;)
                      Ответить
                  • Мое знакомство со скалой закончилось на том, что я не смог запустить код препода на эклипсе.
                    Ответить
            • О, жаваеб отговаривает переходить на жавку, смотрите!
              Ответить
        • Ничего личного, просто первая ссылка из поисковой системы:
          http://habrahabr.ru/post/118041/
          Ответить
          • То сакс, а не LINQ. Во всех смыслах. Без экстешн-методов и лямбд, которых в жабе отродясь не было кошерный, сахарный linq не запилишь. Эти либы стали расти как грибы, где-то начиная с 2008, когда в моду стал входить функцианальный стиль. Но пользы от них, как показала практика ничтожно мало.
            Где assParallel, хотя бы???
            Ответить
            • MapReduce? Но да, без лямбд и замыканий никуда. Кстати, ты еще помнишь, что ты ФОЛДИНГ рекламировал, как замену замыканиям?
              Ответить
              • Фреймворк MapReduce к лямбдам отношения не имеет
                Ответить
                • >Где assParallel, хотя бы???
                  Ответить
                  • Это же противоречит здравому смыслу - в голове у человека один поток! Паралелизм - ересь! Все, кто пишет в 2 потоках должны BurnInHell.AssParallel!
                    Ответить
                • Завтра ищешь в интернете книжку Dive into python. Похуй если ничего не поймешь. Затем идешь на python.org и изучаешь стандартную библиотеку от корки до корки. ..... Apache Hadoop, написанный на Java
                  сверхбыстрые асинхронные key-value хранилища, MapReduce.
                  Отсос хиккующих выблядков / просто неудачников типа рейфага или сисярп/джава-хуесосов, которые сосут хуй по жизни.
                  Всегда ассоциировались малограмотные школьники-питонисты критикующие java.
                  Ответить
                  • А как это жаваговно подружить с фитоном?
                    Ответить
                    • Jython же.
                      http://www.ibm.com/developerworks/ru/library/j-jython/
                      Ответить
                      • Его реально вне тестов кто-то использует?
                        Ответить
                        • Мне на каком-то сайте попался апплет с Jython'ом внутри. Уже не помню, что он выполнял. Кажется, что-то типа загрузчика файлов, который чаще реализуют на Флэше.
                          Ответить
                          • Под Шарп есть IronPython. Суют куда попало
                            Ответить
                            • Куда именно они его суют?
                              Ответить
                              • Python говорю куда попало суют. Из под шарпа можно скрипты на IrPy запускать и все такое. Маленькие няшности
                                Ответить
              • Я очень хорошо помню, как кое-кто слился на простейшем C#-примере, показав своё тотальное незнание не только жабы, но и шарпа.
                >Но да, без лямбд и замыканий никуда.
                Плохому танцору они не помогут.

                >ФОЛДИНГ рекламировал, как замену замыканиям?
                Да скорее как защиту от малолетних долбоёбов-вайпиров.
                Ответить
                • Это как-то отменяет твой отсос?

                  >Плохому танцору они не помогут.
                  >Кококо, нинужно, кококо!

                  >долбоёбов-вайпиров.
                  И как, спасло?

                  Слив защщитан.
                  Ответить
                  • >Слив защщитан.
                    Тебе в одну палату с питушыным царём.
                    Ответить
                    • > с питушыным царём
                      Кстати, где он? Что-то без него в сишных разделах скучно стало.
                      Ответить
                      • Это у которого плюсы головного мозга?
                        Ответить
                        • Это у которого минусы головного мозга. Плюсы для анскиллябр заедушных, потому что на сишечке всё то же самое можно было писать сорок лет назад, да ещё с бо́льшим перфомансом.

                          Кстати: http://ru.wikipedia.org/wiki/C--
                          Царю должно понравиться.
                          Ответить
                          • c--... это же вроде промежуточный код для генераторов? Лень ссылку открывать.
                            Ответить
                            • Нет, это язык программирования такой от компании Sphinx (не путать с созвучным поисковым движком). Гибрид из сишечки и ассемблера, а точнее — ассемблер с сиподобным синтаксисом. Например, переменная с именем EAX — это регистр процессора.

                              На си-минус-минусе в своё время была написана масса скринсейверов и демок для ДОСа. Самый известный — plasma.com.
                              Ответить
                              • А я думал ассемблер с си подобным синтаксисом называется "С"...

                                Думаю тут все не то - ассемблеров с плюшками и сахарком довольно много, тот же IL. Тут дело в том, что своя Си ближе к телу
                                Ответить
                                • http://clck.ru/8mcJS

                                  На что похоже?

                                  P.S. Даже прямо сюда что-нибудь вставлю, чтобы по ссылке не переходить:
                                  ?include "KEYCODES.H--"
                                  ?include "WRITE.H--"
                                  ?include "SYSTEM.H--"
                                  ?include "DOS.H--"
                                  ?include "TSR.H--"
                                  
                                  dword oldkeyhandle={};
                                  byte altflag=0,ctrlflag=0;
                                  
                                  ?define s_upalt s_alt+128
                                  ?define s_upctrl s_ctrl+128
                                  
                                  interrupt keyhandle ()
                                  {
                                  $ PUSH DS
                                  $ PUSH AX
                                  DS = CS;
                                  $ IN AL,KEYBOARD_PORT
                                  IF( AL == s_alt )
                                      altflag = 1;
                                  ELSE IF( AL == s_ctrl )
                                      ctrlflag = 1;
                                  ELSE IF( AL == s_upalt )
                                      altflag = 0;
                                  ELSE IF( AL == s_upctrl )
                                      ctrlflag = 0;
                                  ELSE IF( AL == s_delete )
                                      IF( ctrlflag == 1 )
                                          IF( altflag == 1 )
                                              {@ EATKEY();
                                              @ EOI();
                                              $ POP AX
                                              $ POP DS
                                              return();
                                              }
                                  $ POP AX
                                  $ POP DS
                                  $ JMP FAR CSDWORD[#oldkeyhandle]
                                  }
                                  
                                  
                                  main ()
                                  {
                                  @ WRITESTR("NOBOOT installed.  <CTRL><ALT><DEL> is now disabled.\n");
                                  @ GETINTVECT(#oldkeyhandle,KEYBOARD_INT);
                                  @ SETINTVECT( ,KEYBOARD_INT,CS,#keyhandle);
                                  @ KEEP( , , ,#main);
                                  }

                                  Царю бы понравилось.
                                  Ответить
                                  • > На что похоже?
                                    На битую ссылку. Нахера там nyud.net? И нахера вообще юзать сокращатели для таких коротких урлов?
                                    Ответить
                                • >А я думал ассемблер с си подобным синтаксисом называется "С"...
                                  Хоть на баш отправляй.
                                  Ответить
                              • Эм, а я думал C-- это то, во что когда-то высирал код компилятор хаскеля... Видимо есть несколько одноименных языков ;)

                                P.S. А сфинксу в статье по ссылке посвящен всгео один абзац в конце.
                                Ответить
                  • >КО-КО-КО
                    Давай, расскажи еще, про то, что то ,чего на яве нет - нинужно, кококо!
                    Ответить
          • Не нужно всё это. Только циклы, только императив, только хардкор.
            Ответить

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