Re[21]: Про типы и логику
От: WolfHound  
Дата: 11.02.15 14:39
Оценка: +1
Здравствуйте, Mamut, Вы писали:

M>Причем ты моментально вводишь вводишь два условия:

M>- Нормальные люди не забывают проверять версию протокола при соединении.
Это первое что делают адекватные разработчики при создании нового протокола.
Если разработчики не адекватны, то им не поможет ни какой инструмент.

M>- При обновлении кода клиента компилятор будет бить по рукам везде.

Это и есть статическая типизация протокола.
Если этого нет, то нет и статической типизации.

M>Пример первый

Неадекватность разработчиков.
Инструментами не решается.

M>Пример второй


M>Так как у нас нет никакого контроля над клиентским кодом, то клиенты будут присылать все, что им в голову взбредет, потому что никто не защищен от «ненормальных разработчиков», кривых рук да и банальной реализации (абсолютно математически выверенной и статически типизированной, и скомпилированной) типа «отсылаем заголовок Content-Type одной версии, а тело запроса — другой».

Если код реализующий посылку сообщений генерируется из схемы, в которой прописаны все типы и номер версии, то такого быть не может.
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.