Droga Smoka

Dodane 12 października 2007 o 09:25:02 w kategorii ' Ogólne '.

W rozmowie z kolegą na temat kompatybilności serwera XMPP z RFC i XEP stwierdziłem, że to co ja robię musi się trzymać RFC, a jeśli jakiś klient wysyła bzdury, to jego problem.
– Widzę, że podążasz drogą Smoka – powiedział kolega.




7 komentarzy »

  • 1. Łukasz Horodecki | 12 października 2007,09:34:42 |

    :D

  • 2. Jajcuś | 12 października 2007,09:38:52 |

    Oj, czasem tak się nie da. Znaczy się, ja tak robię, a potem userom tłumaczę które linijki z CJC muszą usuwać, żeby im to działało…
    Niestety, większość implementatorów ma specyfikacje w dupie, albo „wie lepiej”.

  • 3. Jajcuś | 12 października 2007,09:40:54 |

    O, jeszcze jedno albo: ... albo jest wielką korporacją, której tak łatwo do poprawienia małego błędu (np. usunięcia niepotrzebnego cudzysłowu w implementacji DIGEST-MD5) nie przekonasz…

  • 4. AdamK | 12 października 2007,10:29:44 |

    Bodaj ojciec WWW Tim Barners-Lee sformułował mniej więcej takie zdanie: „Bądź scisły w tym co wysyłasz, a liberalny w tym co dostajesz” (w kontekście komunikacji sieciowej).

  • 5. AdamK | 12 października 2007,10:30:12 |

    ups, „liberalny dla tego co dostajesz”

  • 6. Jajcuś | 12 października 2007,10:39:32 |

    AdamK: Tak, znam to. Nie znoszę tego zalecenia. Bo jak oprogramowanie serwera jest liberalne dla tego co dostaje, to „nie zauważy” połowy błędów w klientach. W ten sposób każdy klient będzie wysyłał coś innego (i w praktyce nic nie będzie zgodne ze specyfikacją). A inny serwer może „nie zauważać” innej połowy błędów klientów. I w praktyce ten nowszy serwer będzie musiał mieć dodatkowo zaimplementowaną obsługę tych nietypowych zachowań klientów, z którym radził sobie starszy serwer. Nowsze klienty będą mogły mieć już błędy z którymi radzi sobie nowy serwer (jak stary zacznie wychodzić z użycia)...
    W końcu większość duża część kodu współczesnych serwerów jest obsługą sytuacji niezgodnych ze specyfikacją... a im więcej kodu, tym więcej błędów. W tym security.
    A jakby każdy starał się twardo trzymać specyfikacji, zarówno na wejściu, jak i na wyjściu, to w praktyce bardzo szybko by się wykrywało wszelkie nieścisłości w nowym oprogramowaniu i nie trzeba by było robić obejść na te błędy gdy już oprogramowanie jest używane.

  • 7. kobit | 16 października 2007,12:00:39 |

    Jajcus: z tym kodem w serwerze to nie jest az tak zle. Rzeczywiscie jest troche kodu zwiazanego ze specyfika niektorych klientow ale nie ma tego az tak duzo.

    Z drugiej strony to producent serwera (w szczegolnosci nowego i malo znanego serwera ;-)) nie moze sobie pozwolic zeby taki Pidgin nie dzialal z jego serwerem. A jeszcze do niedawna Gaim mial najgorsza implementacje protokolu ze wszystkich mi znanych.

Dodaj komentarz »

(Textile Lite bez obrazków włączony):
 
 
(c) 2006, Powered by JoggerPL.