Cutelyst est une brique logicielle basée sur Qt et fournissant des fonctionnalités facilitant le développement Web, en utilisant donc le langage C++. Son avantage principal est la possibilité de partager du code avec des applications natives et mobiles, particulièrement si elles sont développées avec Qt (ou au moins en C++). Son développement a débuté fin 2013 et a directement montré que Catalyst avait de meilleures performances, tant en utilisation de mémoire que de temps jusqu’au premier octet envoyé au client, une caractéristique partagée par beaucoup de frameworks Web C++.
Cette nouvelle version apporte la gestion des vues JSON, très utiles pour développer des API. Cette fonctionnalité est fortement intégrée avec la classe QJson de Qt, pour en faciliter l’utilisation et exploiter le code existant.
Le module Cutelyst::Core a été séparé en plusieurs parties : il ne contient plus que les fondations de la bibliothèque, c’est-à -dire les parties Context, Request et Response et leurs dépendances. Par exemple, la gestion des sessions est maintenant disponible dans une extension, Cutelyst::Plugin::Session, qui ne fait plus doublon pour ceux qui préfèrent utiliser leur propre implémentation. De même, les actions ne sont plus intégrées d’office, elles sont maintenant chargées au besoin.
La prochaine version, numérotée 0.11, devrait exiger Qt 5.5 (au lieu de Qt 5.4 actuellement), mais aussi apporter une manière déclarative (au sens de QML) pour définir les applications.
Source : Cutelyst 0.10.0 released!