1. Java / Говнокод #26028

    +1

    1. 1
    float sales = new Integer(getSalesCount()).floatValue();

    Запостил: someone, 13 Ноября 2019

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

    • (float)getSalesCount()
      ?
      Ответить
      • NumberConverterFactory manager = getNumberConverterFactory()
        INumberConverter converter = manager.createFloatConverter()
        float sales = converter.convert(getSalesCount())
        Ответить
        • Билдера забыл.

          Бля, это реально такие классы есть? Я думал это шутка)
          Ответить
          • https://www.oracle.com/webfolder/technetwork/jet/jsdocs/oj.NumberConverterFactory.html
            Какой багор )))
            Ответить
            • Peace' death.

              Напоминает это:

              https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition

              https://github.com/Herzult/SimplePHPEasyPlus
              Ответить
              • > SimplePHPEasyPlus
                public function process(NumberInterface $numberOne, NumberInterface $numberTwo)
                {
                    $resultClass = $this->resultClass;
                    $numbers = array($numberOne->getValue(), $numberTwo->getValue());
                    $result = new $resultClass(array_sum($numbers));
                    return $result;
                }
                Какой багор )))
                Ответить
                • Какой-то длинный метод. Надо было реализацию ещё сильнее по методам раскидать.
                  Ответить
            • https://www.yegor256.com/2014/05/05/oop-alternative-to-utility-classes.html
              int max = new Max(10, 5).intValue();
              Ответить
              • > https://www.yegor256.com/2014/05/05/oop-alternative-to-utility-classes.html
                Ебать! Вот это вот просто-таик хрестоматийный образец буйнопомешанного ООПэшника. Ему в дурку надо.
                Ответить
              • Вау, да это же отложенные вычисления, мы ничего не сравниваем, пока нам не понадобится само число
                public class Max implements Number {
                  private final int a;
                  private final int b;
                  public Max(int x, int y) {
                    this.a = x;
                    this.b = y;
                  }
                  @Override
                  public int intValue() {
                    return this.a > this.b ? this.a : this.b;
                  }
                }
                Ответить
      • >(float)getSalesCount()

        Код неэквивалентен.
        Если getSalesCount плавающее животное, то код ОПа его округлит до целого, а каст — нет.

        Типа jsного getSalesCount()|0
        Ответить
    • Оу, да тут говно посерьёзней: походу в жабе нету truncate. Отсюда и такие танцы.

      Во всяком случае я не нашёл такого метода.
      Ответить

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