Size: a a a

Software Design/Architecture/Zen

2016 December 08

h🐴

h0rsie 🐴 in Software Design/Architecture/Zen
без фанатизма
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
имхо сеттеры лучше, чем передавать в конструктор. особенно есть дефолтовое поведение
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
и я не про депенденси инджекшенс
источник

S

Sergei in Software Design/Architecture/Zen
Обычная проблематика сеттеров - хз кагда и какой юзать, чтобы "оно заработало".
А наличие конструктора с Х параметрами гарантирует, что к завершению конструктора объект будет в адекватном, готовом к использованию состоянии.
источник

S

Sergei in Software Design/Architecture/Zen
И вторая половина беды - легко можно забыть (или просто не знать) какие там сеттеры нужно вызвать.
источник

S

Sergei in Software Design/Architecture/Zen
С параметризированным конструктором об этом рже компилятор заботится.
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
ну какая разница инициировать 5 объектов в 10- строк передавая всё как зависомости в конструктор или сетить только то, что нужно
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
это не значит что обязательно в обхекты инжектить промежуточные состояния. хотя это возможно
источник

S

Sergei in Software Design/Architecture/Zen
Разница в том, что некто Иванов написал класс, и я совершенно не в курсе, какие там сеттеры - and guess what? - в каком порядке нужно вызывать?
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
Sergei
И вторая половина беды - легко можно забыть (или просто не знать) какие там сеттеры нужно вызвать.
та5к всё ОБЯЗАНО работать без сеттеров
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
если они не обязательные
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
Sergei
Разница в том, что некто Иванов написал класс, и я совершенно не в курсе, какие там сеттеры - and guess what? - в каком порядке нужно вызывать?
порядок вообще неприемлимо для паттерна сеттеры
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
а геттеры -  получить путь файла нужно всё равно даже если не в явном виже. например, как ключ для хэширования
источник

S

Sergei in Software Design/Architecture/Zen
f = new File();
f.setName("hello.txt¨);
f.setAttributes(READONLY);

f = new File();
f.setAttributes(READONLY);
f.setName("hello.txt¨);

Я легко могу представить, когда эти два кода будут ртботать по-разному.
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
между этими строчками же ничего не происходит
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
точнее не должно
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
опять же ЭТО сетить можно в 2 параметра в 1 функцию
источник

S

Sergei in Software Design/Architecture/Zen
А что должно? Я просто создал объект файл, присоединил его к фаилу на диске и вроде как поменял атрибуты.
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
в конкнетном случае если не будет сеттеров, а файл не разрастётся до хх тысяч строк - будет много объектов
источник

AB

Artur BAGArt in Software Design/Architecture/Zen
появится точно такая же проблема - промежуточного состояния и последовательности инициации всех этих объектов чтобы сделать задачу
источник