Knock-out est une bibliothèque JavaScript qui permet de créer des interfaces utilisateur riches et dynamiques, ainsi qu'un éditeur d'interface utilisant un modèle de données sous-jacent. C'est une architecture MVVM (Modèle-Vue-VueModèle).
Avec cet outil, vous pouvez faire, par exemple :
- une mise à jour automatique des bonnes parties de votre interface utilisateur à chaque changement du modèle de données ;
- des liaisons déclaratives. C'est une façon simple et évidente pour relier votre interface utilisateur à votre modèle de données ;
- mettre en œuvre des comportements personnalisés comme de nouvelles liaisons déclaratives pour une réutilisation facile en seulement quelques lignes de code.
Étant écrit en JavaScript pur, Knock-out fonctionne avec n'importe quelle technologie serveur ou cliente. Elle peut donc être ajouté à vos applications Web existantes sans nécessiter de modifications architecturales majeures. L'outil est d'ailleurs léger, environs 13 Ko après compressions.
Il fonctionne sur n'importe quel grand navigateur (IE 6+, Firefox 2+, Chrome, Safari, etc.).
Les développeurs familiarisés avec Ruby on Rails, ASP.NET MVC ou d'autres technologies de type MV* peuvent voir MVVM comme une forme en temps réel de MVC avec la syntaxe déclarative.
La version 2.2.0 vient de sortir. Elle touche notamment :
- aux liasons (css, text, options, with, if et attr) ;
- aux fonctionnalités foreach et template ;
- à l'objet ko ;
- etc.
Site officiel.
Téléchargement.
Documentation.