Re[32]: Haskell нужен! (в Standard Chartered Bank)
От: jazzer Россия Skype: enerjazzer
Дата: 05.02.15 15:58
Оценка:
Здравствуйте, Mamut, Вы писали:

A>>Ограничение "нельзя менять amount у processed order" выглядит стабильным.


M>Увы, нет Начиная с "все спецификации ad-hoc" из оригинального сообщения и до последнего тикета, который таки позволяет увеличивать сумму заказа для pre-paid закаов согласно конфигурации магазина. И это связано с дополнительной логикой — что, если


Вот тут как раз и поможет компилятор — как раз с ad-hoc изменениями требований. Если раньше с processed order можно было делать все, что угодно, а потом вдруг "концепция поменялась" и amount у него больше менять нельзя — достаточно отразить это в определении типа, а дальше компилятор сам ткнет во все места, где код не соответствует новому определению, и попросит дописать соответствующие ифы вроде if (!processed) change_amount(), чтоб гарантировать, что у processed оредров никто amount менять не будет.
Без типов — придется просматривать руками все вызовы change_amount по всему проекту и пытаться понять, где у нас processed, где не processed, а где рыбу заворачивали.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.