Comments 6
Поправьте меня если я ошибаюсь. После того как мы реализовали объект через Map, компилятор уже не знает какие свойства есть у того или иного объекта. Для обобщенных сценариев это не проблема. Но если мы напишем сценарий для определенного вида объектов, и обратимся к свойству, которого у этого объекта нет, то это будет ран-тайм ошибка. Которая в нашей архитектуре будет молчаливо обработана отменой сценария.
Т.е. архитектура ослабляет преимущества статического языка.
Т.е. архитектура ослабляет преимущества статического языка.
+1
Вы не ошибаетесь, кое-что мы теряем. Поправлю только, что не архитектура ослабляет, а дизайн, — мы ведь говорим о модели обработки данных в одной конкретной подсистеме, а не о всей взаимосвязи компонентов.
Однако почему у определенного вида объектов не будет нужного свойства? Куда оно денется? Или на этапе создания данного объекта мы не проверили, что все нужные свойства на месте?
Однако почему у определенного вида объектов не будет нужного свойства? Куда оно денется? Или на этапе создания данного объекта мы не проверили, что все нужные свойства на месте?
-1
Однако почему у определенного вида объектов не будет нужного свойства?
Программисты ошибаются. В программу вносятся изменения.
Хотя уже большой плюс, что имя свойства указывается не строковой константой, а настоящим индетификатором. Если мы ошибемся в букве, и укажем имя свойства которого нет, компилятор это отловит (надеюсь). В динамических языках такие ошибки выявляются в рантайме.
0
Поправочка.
Должно быть
Должно быть
progression op = iterate (`op` 2)
без 1 в конце.+1
Sign up to leave a comment.
Дизайн и архитектура в ФП. Часть 3