Показаны сообщения с ярлыком проектирование. Показать все сообщения
Показаны сообщения с ярлыком проектирование. Показать все сообщения

четверг, 3 ноября 2011 г.

Вопрос про проектирование интерфейса класса
Мне тут недавно приснилось (сам в шоке!), что я хочу к дате прибавлять и отнимать 1 месяц.
Возник интересный вопрос (и тут же пачка следом, привожу в порядке появления)
1) Что будет, если к 3 ноября прибавить 1 месяц? Вроде как 3 декабря.
2) Что будет, если к 28 января прибавить 1 месяц? 28 февраля по идее...
3) Идем дальше, 29 января? Тут есть нюанс ;) Думаю, наилучший выход, если выходим за диапазон дней месяца, ставить 1 число следующего и не париться.
4) Если у нас сложение работает как в п.3, то 29.01, 30.01, 31.01 и 1.02 после прибавления 1 месяца становятся одной датой - 1 марта.
5) А самое интересное начинается при вычитании 1 месяца. Оказывается, что (30.01 + 1 месяц) - 1 месяц = 1 февраля, а (30.01 - 1 месяц) + 1 месяц = 30 января.

Вот такие вот пирожки...