Си диез / Говнокод #13793 Ссылка на оригинал

0

  1. 1
if( a.GetPixel(i, k).Name.ToString().Substring(0,6)=="ff0404")

http://www.cyberforum.ru/csharp-net/thread954611.html#post5057105

Запостил: Qwertiy Qwertiy, (Updated )

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

  • Класс. Проверил код - тут ещё и баг, т. к. в Name возвращается не RRGGBB, а AARRGGBB, что означает, что для корректной работы нужно Substring(2, 6).
    Ответить
  • А он случаем не может вернуть в name какой нибудь "light-blue"?
    Ответить
    • Может: если написать Color.Red.Name, он вернёт "Red" 🙂
      Но в случае извлечения цветов из BitMap'а он так не делает...
      Ответить
      • > он так не делает
        Жаль. Было бы море батхертов у тех кто воспользовался кодом 😉

        > Name.ToString()
        А Name это разве не String?
        Ответить
        • > Жаль. Было бы море батхертов у тех кто воспользовался кодом 😉
          Я вначале подумал, что такой цвет ищется как раз чтобы на слова не наткнуться 🙂

          > А Name это разве не String?
          String, конечно 🙂
          Ответить
    • [color=LightBlue]"light-blue"[/color] вместо [color=#ff0404]"ff0404"[/color]? Навряд ли.

      P.S. Fail.
      Ответить
  • На следующей странице:
    > Сорри, хексы наизусть не учил...
    Ответить
    • Тарас, водичку в сторону... либо пиши код с примером, либо не умничай....
      Ответить
        • ColorComparator c = ColorComparatorFactory.GetInstance().CreateComparator(ColorComparator.DefaultSettings);
          if (c.compareForEquality(GetPixel(i, k).Name.ToString(), Color.FromString("ff0404"))) {
              ...
          }
          Ответить
          • Почему где-то поля с большой буквы, где-то — с маленькой? Этот зоопарк нормален для Шарпа?
            Ответить
            • > где-то поля с большой буквы, где-то — с маленькой
              Да я ж не шарпей, я крестовик и жабист. Вот и написал compareForEquality с мелкой.
              Ответить
              • И на форуме народ в большом количестве пишет то так, то так. Зачем вообще было отходить от общепринятых стандартов? Типичный Microsoft.
                Ответить
            • А IDE об этом не предупреждает? Eclipse вон предупреждает, что еще один плюс для начинающих.
              Ответить
              • С какого перепуга ей об этом предупреждать? Писать же можно как угодно. А кому хочется охапку дурацких предупреждений, надо поставить StyleCop или ещё какое подобное расширение.
                Ответить
                • Resharper по умолчанию предупреждает, если нарушаешь общепринятые соглашения об именовании.
                  Ответить
                • >Писать же можно как угодно.
                  Можно, но если ты захочешь когда-то работать с другими - лучше не нужно. Поначалу длясибя пойдет.
                  Ответить
                  • Для всех пойдёт, если только там не каша. Например, не начинаю имена у приватных переменных с _подчёркивания. И ещё некоторые ИсключенияБывают. А для себе VB.NET, а там нет смысла ЗаморачиватьсяСИменами, поскольку он case insensitive 🙂
                    Ответить
                    • > case insensitive
                      > ЗаморачиватьсяСИменами
                      Вот так из-за vb и delphi и рождаются мудаки, которые пишут somelongfunction вместо SomeLongFunction, и считают это нормальным. А потом еще и ругаются, что другие языки требуют от них соблюдения регистра...

                      Давайте еще поиск расстоянию Левенштейна прикрутим, чтобы samlongfuncteon тоже работало.
                      Ответить
                      • > которые пишут somelongfunction вместо SomeLongFunction
                        Сам же цитируешь пример
                        >> ЗаморачиватьсяСИменами
                        и при этом приводишь прямо противоположный!

                        Кстати, VS автоматически приводит имена в коде к тому регистру, в котором они объявлены.
                        И для шарпа подсказки тоже от регистра не зависят, так что надо только один раз нормально объявить, а потом всё будет хорошо. В отличие от джавовских сред, кстати - замучался в них с набором заглавных букв...
                        Ответить
                        • > Сам же цитируешь пример
                          Я его не цитирую как пример, а просто как фразу из вашего коммента. ЗаморачиватьсяСИменами понятно и читабельно. заморачиватьсясименами - нечитаемое говно.

                          > В отличие от джавовских сред, кстати - замучался в них с набором заглавных букв...
                          Есть такая проблема.

                          > замучался в них с набором заглавных букв
                          Через тернии к звездам 😉
                          Ответить
      • Прочитал тему, понял откуда это 🙂 Надо запомнить фразу.
        Ответить
      • Либо сам напиши решение задачи 2+2=?, либо не строй из себя такого умного только потому, что мы не можем её решить.
        Ответить
    • внимательно вникаем =
      if( a.GetPixel(i, k).Name.ToString().Substring(0,6)=="ff04 04")
      и ff0404 - 404, page not found.

      A нельзя было бы эту конструкцию упростить как-бы говоря, например методом возвращающим значение кода пикселя, без байды в ифе.

      типа:
      getPixelCode(i,k){
      return this.GetPixel(i, k).Name.ToString().Substring(0,6);
      }
      Ответить
  • Мы дошли до развилки, где должны были расстаться. Было темно. Мы остановились.
    Ответить

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

Переведи на "PHP", guest!

    А не использовать ли нам bbcode?


    8