
Envoyé par
davrous
Hello,
Alors comme j'ai dit une grosse connerie, je suis parti me renseigner au près d'un alias interne de développeurs (sur WPF et Silverlight). En fait, ni l'un ni l'autre ne transforme le XAML en code IL à la compilation. En WPF, le XAML est transformé dans une forme binaire appelé BAML plus léger en taille et permettant ensuite au parser de gagner un peu en performance plus tard. Dans le cas de Silverlight, comme la runtime est plus légère que .NET, la solution de conserver le XAML en clair et de le compresser dans l'enveloppe ZIP du XAP leur suffisaient (aux développeurs de SL). En effet, le XAML se compresse particulièrement bien.
Ensuite, le XAML est parsé à l'exécution pour générer du code IL qui sera finalement exécuté.
J'ai posé ensuite la question suivante: serait-il alors intéressant de plutôt déclarer la partie UI en pur code-behind en C# par exemple plutôt qu'en XAML? La réponse fut non. Apparemment, l'équipe WPF avait essayé de générer le code-behind à partir du XAML à la compilation et ils avaient des performances inférieures au modèle actuellement retenu. Je n'ai pas eu davantage de réponses/détails sur ce sujet malgré tout.
A noter que le parser a été amélioré et revue dans la version 4 de Silverlight.
Bye,
David
Partager