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

    +137

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if (messages[i].description != "")
                                if (messages[i].description.StartsWith("<![CDATA["))
                                {
                                    messages[i].description = messages[i].description.Substring(9);
                                    messages[i].description = messages[i].description.Substring(0, messages[i].description.Length - 3);
                                }

    для строк типа <![CDATA[******]!>
    Возникает устойчивое ощущение говнокода. Как нормально написать? :)

    Запостил: ikovalyov, 16 Августа 2009

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

    • Я бы упростил до такого:
      if (messages[i].description.StartsWith("<![CDATA["))
      {
      messages[i].description = messages[i].description.Substring(9, messages[i].description.Length - 9 - 3);
      }
      Ответить
      • мда, именно
        то меня и юеспокоило, благодарю, запыхался :)
        Ответить
        • *мда, именно это меня и беспокоило, благодарю, запыхался :)
          Ответить
          • а я бы упростил до такого:
            messages[i].description = FixCDATA(messages[i].description);
            Ответить
            • ну да, чтоб было понятно что оно в конце концов обрезает. ок, благодарю всех за обсуждение.
              Ответить
              • description field? или что? почему оно с маленькой буковки?
                Ответить
                • месаджес - массив структур
                  Ответить
                • public struct MessageData
                  {
                  public string title;
                  public string link;
                  public string description;
                  public string date;
                  public string email;
                  public int messageId;
                  }
                  Ответить
                  • ааа структура ну тоды нормуль

                    хотя что то мне подсказывает что придется ее в класс переделывать скоро :)
                    Ответить
    • показать все, что скрытоЯ бы перешел на другой язык программирования.
      Ответить
    • Сделать на LINQ c помощью XCData... И почитать умных книжек
      Ответить
      • линк не получится, дотнет второй
        Ответить
        • Уже четвёртый выходит. Тряси начальство, чтобы поскорее переходили. Там отличная обратная совместимость кодов.
          LINQ офигенная вещь.
          Ответить
          • хы хы хы глупый совет трясти начальство
            почему большинство народу считает что любое начальство долбоебы?
            Ответить
            • Не знаю, как любое, а наше начальство по сути - менеджеры, и в технологиях программирования они не разбираются. Я решаю, на чём мы будем кодить. И они доверяют.
              Ответить
          • новые проекты пишу на последних версиях, доделки в старых делаю на том, на чём старый написан.
            Ответить
    • выноси в метод и не еби моск
      Ответить
    • линк не получится, дотнет второй
      Ответить

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