[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Как спастись от mysql-server в KDE 4.2



Покотиленко Костик пишет:

И ещё раз попрошу прояснить ускользающую от меня связь между
тукстовостью/бинарностью протокола или формата и степенью ожидаемости
данных, хранимых в этом формате или получаемых по этому протоколу.
Постараюсь на пальцах. Грубо говоря, если в тебе надо что-то добавить в
бинарном протоколе, с чётко определённым форматом, ты не сможешь это
сделать не скорректировав его клиентов и серверов, а точнее либу,
которую они используют, так, чтобы ничего не сломалось. Поэтому, к
вопросу придётся подойти системно.

В случае с текстовым протоколом, где всё не так чётко определено, ты
обломаешься и вставишь новое поле куда-нибудь, где оно не сильно
помешает, назавёшь его новой фишкой и никому не скажешь.

Тут баланс такой - либо делаешь всё как надо, либо потом разгребаешь
глюки и усложняешь парсеры.

Всё написано правильно, только в случае с текстовым протоколом, клиенты будут продолжать и дальше работать, в случае с бинарным - надо всех и сразу обновить, что зачастую невозможно.

В этих словах сама суть. Или ты переходишь шагами и знаешь на каком что,
или ты съезжаешь и тебе не к чему привязаться и получается бардак.

Обратную совместимость соблюдать конечно надо, тогда переход будет
безболезненный. Пример сервер уже умеет новую вервию протокола с
расширенным набором команд, а клиент нет, в протоколе должна быть
возможность это выяснить и сервер может общаться с клиентом на старой
версии. Также и клиент должен общаться с сервером набором комонд,
которые тот поддерживает. Со временем сильно старые версии можно
запрещать.


Я конечно тоже идеалист, но это уже перебор, пора спускаться с небес.
В программировании фактов неопределённости очень велик. Если все пользователи вашей программы находятся в одном здании и по команде админа обновляют софт преданно глядя вам в глаза, дружно высунув языки и кивая головами - то Вам шикарно повезло, в реальном мире всё как раз наоборот, это я как админ со стажем Вам заявляю. Добро пожаловать в реальный мир, UNIX - это система для реального мира.


Reply to: