Size: a a a

Software Design/Architecture/Zen

2020 October 30

SP

Sergey Protko in Software Design/Architecture/Zen
Андрей Ява
класс должен быть классом а не процедуркой, завёрнутой в метод класса
Тоесть набор процедур, пнятненько
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Sergey Protko
Довольно сложное определение. Через причины изменений как-то проще)
причина изменений это какая-то абстрактная непонятная фигня
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
через инварианты совершенно понятно - функциональная зависимость
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
есть предикат - инвариант
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
у него есть аргументы
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Apache DOG™
причина изменений это какая-то абстрактная непонятная фигня
Ну для многих давать данные инвариату это давать доступ к данным и нарушать инкапсуляцию, потому всеравно возникнут проблемы с трактовками)
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Андрей Ява
класс должен быть классом а не процедуркой, завёрнутой в метод класса
Класс = данные + инварианты + операции не нарушающие инвариант (ПрОцЕдУрКи)
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Sergey Protko
Ну для многих давать данные инвариату это давать доступ к данным и нарушать инкапсуляцию, потому всеравно возникнут проблемы с трактовками)
Ты даешь доступ к тому факту что инвариант выполняется, используя инстанс класса
источник

SP

Sergey Protko in Software Design/Architecture/Zen
В целом да, почти как Хоар классы и описывал
источник

YG

Yury Golikov in Software Design/Architecture/Zen
Apache DOG™
через инварианты совершенно понятно - функциональная зависимость
В твоём случае тогда всегда один модуль/класс - один инвариант получается
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Yury Golikov
В твоём случае тогда всегда один модуль/класс - один инвариант получается
не всегда
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
иногда это нарушается
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
и не всегда это криминал
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Apache DOG™
иногда это нарушается
Потому и сложно) а ещё можно на изи инвариантов наделать которые на самом деле не инварианты
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
вабрику , недоступную извне модуля, можно назвать просто  Factory
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Андрей Ява
вабрику , недоступную извне модуля, можно назвать просто  Factory
зачем вообще эта терминолоигия
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
она не фабрика, она ничего не производт
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
это функция
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
функция ничего не производит
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Функция - правило которое сопоставеляет элементы двух множеств каким-то образом.
источник