Re[4]: Преимущество переноса условия из метода в фабрику
От: no4  
Дата: 12.04.21 06:07
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Здравствуйте, no4, Вы писали:



vsb>Непонятно, почему в FP сложно добавить вариант. Добавляем вариант, компилируем программу, вылазит кучу ошибок. Каждая ошибка это то место, где нужно добавить код обработки. Собственно всё.


В ОО не выставляется наружу внутренности того, что такое вариант.
В ОО можно доабавить свой вариант за пределами модуля, главное, чтобы он реализовывал контракт абстрактного варианта.
Т.е. есть явное описание интерфейса того, что предусмотрено для добавления нового варианта чтобы он вписался в систему.


vsb>Всё же это уже другая задача. В такой задаче ОО-подход нужен, соглашусь. Но тут речь идёт не о трудоёмкости, а принципиальной возможности.


Это примерно та же самая задача. Просто когда расширение владеется другими людьми хорошо иллюстрирует трудоемкость добавления варианта.
Но абстрагирование и разделения по модулям так же работает, когда код владеется другой командой в том же проекте или просто вообще у нас много кода.


vsb>Хотя я бы и этот подход сделал бы по-другому. По-мне лучше вынести такие операции в интерфейс плагина и всё. Что-то вроде



vsb> State processValidInput(byte[] input, State state);

vsb>В таком варианте можно и state добавлять (например с нужными полями), и обработка остаётся в классе с поведением.

Я не очень понял. Вы можете привести чуть больше кода используя пример с полами?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.