Re[18]: Haskell нужен! (в Standard Chartered Bank)
От: genre Россия  
Дата: 04.02.15 10:27
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Спасибо. Это все равно возвращает к изначальным:

M>- кто и как будет проверять, правильно ли реализована логика в этих типах
M>- не впихивать же 40 условий, половина из которых зависит от конфигураций, в эти инициализаторы

1. так же как и раньше, просто некоторая часть ошибок найдется компилятором, а не тестером. те этот механизм ничего конечно не гарантирует, кроме того, что какой-то процент ошибок найдется раньше. так же см пункт 2.
2. ну вот поэтому я и не любитель таких методик, практика показывает, что гораздо быстрее найдется вылетевший NPE, чем ты озверев впихнешь всю бизнес-логику в систему типов. БОлее того, если уж ошибка проскочит компилятор, то найти ее будет сложнее, чем банальный NPE в примере с билдером.

Но принципиально такая возможность существует. Может быть можно даже извернуться и придумать дсл позволяющий реализовывать такие штуки гораздо менее многословно.

PS. немного подумав. и все-таки, для некоторых вещей такие техники вполне имеют смысл, например для каких-то базовых сущностей системы. Например, ордер в торговой системе инварианты которого проверяются компилятором это скорее добро, чем зло, учитывая, что модифицируется он крайне редко и можно потратить силы на систему типов один раз.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.