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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
if (Cache[articlesRssData] != null)
{
     return Cache[articlesRssData] as ArticleRssData?;
}

return null;

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

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

  • забыл сказать что это все находится в отдельной функции, послевызова которой проверяем на null
    Ответить
    • The syntax T? is shorthand for Nullable<T>, where T is a value type. The two forms are interchangeable.

      http://msdn.microsoft.com/en-us/library/1t3y8s4s.aspx

      P.S. Знатоки c#, поясните, пожалуйста, зачем это здесь - ведь ArticleRssData не слишком похож на value-type.
      P.P.S. Кажется понял - он описан как struct.
      Ответить
  • Ну говнокод здесь в лишних проверках. В простом случае хватило бы
    return Cache[articlesRssData] as ArticleRssData?;

    Если там будет null, то он его и вернет.
    И в оригинальном случае будет еще два поиска по кешу.
    Ответить
      • вероятно имелось в виду: ещё два поиска помимо проверки, а не ещё один поиск помимо уже одного поиска 🙂
        Ответить
      • спасибо, за фикс 🙂
        либо "два поиска вместо одного", либо "еще один поиск" 🙂
        Ответить
      • Скорее всего еще не значит что так оно и есть. Это ж говнокод, вдруг это обвертка над List<>-ом на тысячи элементов.
        Ответить

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

Помни, guest, за тобой могут следить!

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


    8