Cette série de tutoriels vise à transformer les concaténations de chaînes HTML en désordre en un code Swift beau, sécurisé et typé en utilisant un langage de description de HTML (DSL) complet. À la fin du tutoriel, vous serez en mesure de créer un DSL HTML prêt pour la production qui peut être utilisé dans des projets du monde réel. Le DSL fournira une protection XSS automatique, une balise typée, et des suites de tests exhaustives. L'architecture centrale du DSL est basée sur une solide fondation de protocoles et de structs, notamment un protocole HTMLElement et un struct Element. L'attribut @resultBuilder est utilisé pour activer la belle syntaxe du DSL. Le DSL fournit un support complet des éléments pour tous les besoins HTML, un rendu conditionnel intelligent et une sécurité automatique grâce à l'échappement HTML. Les tests sont également une partie essentielle du DSL, avec des stratégies de test robustes pour garantir la fiabilité. Les avantages de l'utilisation du DSL incluent la réduction des bugs, une meilleure lisibilité, une maintenance plus facile, la sécurité de type, la sécurité et les performances. Le tutoriel complet couvre l'architecture de base, la mise en œuvre complète de @resultBuilder, la bibliothèque complète des éléments HTML, les stratégies de test de production et les exemples d'utilisation du monde réel. La prochaine partie de la série couvrira les modèles avancés, l'optimisation des performances et les stratégies de déploiement de production.
dev.to
Building Your Own DSL with @resultBuilder in Swift: HTML Builder
