8. Conclusion
Ce cours a parcouru, en Dart, exactement la même progression que le cours [Introduction au langage TypeScript et au framework NestJS] : les fondamentaux du langage, les fonctions HTTP, quatre variantes de client pour un même serveur (script CLI simple, couches DAO/métier séparées, projet compilé, application web), et l'accès à une base MySQL, par pilote natif puis par un «ORM» écrit à la main faute d'équivalent mûr de TypeORM ou Prisma.
Les différences systématiques rencontrées tout au long du cours dessinent le profil propre de Dart face à TypeScript : un typage NOMINAL et SAIN, jamais contredit par ce qui se passe réellement à l'exécution (pas de coercition implicite, pas de decimal MySQL renvoyé en chaîne malgré son type déclaré) ; une distinction stricte entre le monde Dart et le monde JavaScript quand on vise le web ([dart:js_interop], [.toJS]), compensée par une compilation AOT qui, à l'inverse, ne demande AUCUN polyfill ; des NOUVEAUTÉS récentes (records, patterns, classes scellées, modificateurs de classe) qui jouent, en Dart 3, un rôle comparable à celui des dernières éditions d'ECMAScript côté TypeScript ; et, enfin, un écosystème de paquets plus resserré, où certains outils (ORM MySQL en tête) n'ont pas encore l'équivalent mûr que propose l'écosystème npm.