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

    +78

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    public static void create(String title, int width, int height) {
            if (isWindowCreated())
                throw new RuntimeException("Window created.");
            if (title == null)
                throw new NullPointerException("Window title == null.");
            if (width <= 0 || height <= 0)
                throw new IllegalArgumentException("Window size <= 0.");
            if ((window = GLFW.glfwCreateWindow(width, height, title, MemoryUtil.NULL, MemoryUtil.NULL)) == MemoryUtil.NULL)
                throw new RuntimeException("Failed to create the GLFW window.");
        }

    Запостил: jangolare, 20 Декабря 2014

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

    • offensive programming, java style
      Ответить
    • Вполне нормальная защита от дурака.
      Ответить
      • Меня что в этом настораживает: статический create() ничего не возвращает. Какая-то фабрика пустоты. А ошибки скорее всего потому, что это какая-нибудь обертка сишного АПИ, в котором ошибок просто нет.
        Ответить
        • Он пишет в статическую переменную window.
          Ответить
          • Ну так это-то и плохо. Ведь явно создается какой-то объект, а его вместо того, чтобы вернуть из create записывают в какую-то статическую переменную. Очень дальновидный подход в смысле будущих попыток синхронизации или расширения.
            Ответить
            • Автор набрался мочи из сишного кода, небось, еще и заполняет переданный параметром массив.
              Ответить
        • >обертка сишного АПИ
          обертка кроссплатформенной glfw. Правда исключений она, насколько я знаю, действительно не кидает.
          Ответить
          • > Правда исключений она, насколько я знаю, действительно не кидает.
            А как бы она смогла - она же на C написана.
            Ответить

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