LINUX.ORG.RU

История изменений

Исправление pozitiffcat, (текущая версия) :

Да, закона Деметры он не нарушает, но зависимость очень большая. Когда я начинаю использовать в одном методе кучу классов, которые реализуют какую-то логику. Вот посмотрите только на это:

Mat4 Pivot::modelGlobalMatrix() const // этот же класс с такой же реализацией и в Model
{
    MovableMatrixConstructor mmc;
    return mmc.constructGlobalMatrix(this);
}
MovableMatrixConstructor высчитывает глобальную матрицу. Почему это в отдельном классе? Что бы небыло дублирования кода в Model, при расчетах.

Да на такой класс охренеешь юнит тест присать. Да и по сути класс-то ничего не умеет. Этот класс просто композиция разных классов, которые транслируют в них свои методы.

Исходная версия pozitiffcat, :

Да, закона Деметры он не нарушает, но зависимость очень большая. Когда я начинаю использовать в одном методе кучу классов, которые реализуют какую-то логику. Вот посмотрите только на это:

Mat4 Pivot::modelGlobalMatrix() const // этот же класс с такой же реализацией и в Model
{
    MovableMatrixConstructor mmc;
    return mmc.constructGlobalMatrix(this);
}
MovableMatrixConstructor высчитывает глобальную матрицу. Почему это в отдельном классе? Что бы небыло дублирования кода в Model, при расчетах.