В Чтв, 19/03/2009 в 00:27 +0900, Alexander Danilov пишет: > Покотиленко Костик пишет: > >>>>> > >>>> И ещё раз попрошу прояснить ускользающую от меня связь между > >>>> тукстовостью/бинарностью протокола или формата и степенью ожидаемости > >>>> данных, хранимых в этом формате или получаемых по этому протоколу. > >>> Постараюсь на пальцах. Грубо говоря, если в тебе надо что-то добавить в > >>> бинарном протоколе, с чётко определённым форматом, ты не сможешь это > >>> сделать не скорректировав его клиентов и серверов, а точнее либу, > >>> которую они используют, так, чтобы ничего не сломалось. Поэтому, к > >>> вопросу придётся подойти системно. > >>> > >>> В случае с текстовым протоколом, где всё не так чётко определено, ты > >>> обломаешься и вставишь новое поле куда-нибудь, где оно не сильно > >>> помешает, назавёшь его новой фишкой и никому не скажешь. > >>> > >>> Тут баланс такой - либо делаешь всё как надо, либо потом разгребаешь > >>> глюки и усложняешь парсеры. > >>> > >> Всё написано правильно, только в случае с текстовым протоколом, клиенты > >> будут продолжать и дальше > >> работать, в случае с бинарным - надо всех и сразу обновить, что зачастую > >> невозможно. > > > > В этих словах сама суть. Или ты переходишь шагами и знаешь на каком что, > > или ты съезжаешь и тебе не к чему привязаться и получается бардак. > > > > Обратную совместимость соблюдать конечно надо, тогда переход будет > > безболезненный. Пример сервер уже умеет новую вервию протокола с > > расширенным набором команд, а клиент нет, в протоколе должна быть > > возможность это выяснить и сервер может общаться с клиентом на старой > > версии. Также и клиент должен общаться с сервером набором комонд, > > которые тот поддерживает. Со временем сильно старые версии можно > > запрещать. > > > > Я конечно тоже идеалист, но это уже перебор, пора спускаться с небес. > В программировании фактов неопределённости очень велик. Если все пользователи > вашей программы > находятся в одном здании и по команде админа обновляют софт преданно глядя > вам в глаза, дружно > высунув языки и кивая головами - то Вам шикарно повезло, в реальном мире всё > как раз наоборот, это > я как админ со стажем Вам заявляю. Добро пожаловать в реальный мир, UNIX - > это система для реального > мира.
Я собственно тоже со стажем... Тем более, что изложенный тут принцип обновляться не заставляет. Кому надо новое тот обновится. Опять же протоколы обновляются не так и часто, только в начале развития. -- Покотиленко Костик <[email protected]> -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

