Tous les utilisateurs veulent la compatibilité ascendante, pour ne pas avoir à faire de modification entre deux versions. Ils seront unanimes sur le sujet. Mais l'évolution d'une API reste un problème d'anticipation crucial pour les développeurs : on ne peut ni le prévoir ni le gérer.
Boy Baukema a rassemblé les 6 stratégies de compatibilité ascendante pour un projet, et vous y retrouverez sûrement le votre. N'oubliez jamais que la compatibilité n'est jamais qu'une hypothèque sur l'avenir.
- Concevoir très bien son API
- Incuber
- Obsolescence
- Versions
- Mises à jour
- Recommencer
Chaque approche peut être vue comme une solution de remplacement de la précédente : au début, on conçoit l'API suffisamment. Puis, quand elle n'est plus assez souple pour continuer, on la remplace par une version 2, jusqu'à ce que les modifications soient tellement grandes... qu'on reprend tout à zéro.
- Backward compatibility, bane of the developer
Boy Baukema a rassemblé les 6 stratégies de compatibilité ascendante pour un projet, et vous y retrouverez sûrement le votre. N'oubliez jamais que la compatibilité n'est jamais qu'une hypothèque sur l'avenir.
- Concevoir très bien son API
- Incuber
- Obsolescence
- Versions
- Mises à jour
- Recommencer
Chaque approche peut être vue comme une solution de remplacement de la précédente : au début, on conçoit l'API suffisamment. Puis, quand elle n'est plus assez souple pour continuer, on la remplace par une version 2, jusqu'à ce que les modifications soient tellement grandes... qu'on reprend tout à zéro.
- Backward compatibility, bane of the developer
-
Auteur
-
Origine