Re[3]: Вариант 0K
От: 0K Ниоткуда  
Дата: 01.09.10 10:36
Оценка:
Здравствуйте, xpalex, Вы писали:

X>1. Зачем метод Counter.TryParse, если вы на том же уровне (из Program.Main) делаете обернутый counter.Load и counter.Save? Что мешало сделать такой же обернутый new Counter(alias)? Как-то непоследовательно...


Т.к. Counter.TryParse -- не возвращает дополнительной информации. В случае с сохранением/загрузкой -- может быть слишком много вариантов проблемы и все их нужно знать.

X>2. Не описана ответственность класса Counter. Можно-ли дергать за .Increment() до .Load() ? Можно-ли дергать за .Increment() после .Save()? Тут явное нарушение SRP: класс отвечает как за инкремнтирование счетчика, так и за работу с файловым хранилищем.


Вообще-то идея разделить ответственность у меня возникала, но для такой простой задачи -- лишнее. В данном случае можно дергать методы без всяких ограничений -- нарушения не будет, это дело вызывающего кода (если ему так нужно -- пусть дергает сначала Save, потом Increment, потом опять Save).

X>3. Counter.Increment() гаранитрует успешеное выполнение ?


Да.
=сначала спроси у GPT=
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.