|
Rendez vos programmes dynamiques avec .NET
Richard Clark
05/04/02
(Vu
15059)
Dans le framework .NET existe la classe ICodeCompiler, très pratique pour rendre votre code dynamique. Qu'est-ce que du code dynamique ? C'est la génération est l'utilisation de code C#, VB.NET ou JScript à la volée. Rendez vos programmes dynamiques avec .NET Par Rémi Thomas de Pixel Technology, MVP .NET Dans le framework .NET existe la classe ICodeCompiler, très pratique pour rendre
votre code dynamique. ICodeCompiler compile le code et génère un assembly. La réflexion vous permet d'invoquer les méthodes des assembly, et ainsi le code que vous venez de générer. Je vous propose un exemple complet qui va interpréter des formules mathématiques pour créer des courbes en 3D.
Dans la zone de saisie on entre la formule mathématique, l'appuie sur "Use" génère l'assembly avec la fonction transformée en MSIL, et la courbe est actualisée. Dans notre exemple il faut saisir du code C#. Cela va bien plus loin qu'un simple interpréteur de fonction mathématique ! La génération et l'utilisation de l'assembly est regroupé dans la classe DynaFormula du projet. La méthode EmitFormula provoque la compilation et prépare l'assembly à son utilisation. Voici le code nécessaire pour générer et utiliser du code dynamique. Ici, pour simplifier, aucun test d'erreur, reportez vous aux sources pour avoir la gestion des erreurs. // Le container C# Le reste du programme s'occupe de l'affichage 3D, une rotation en temps réel est possible en déplaçant la souris dans la zone de visualisation. Il ne reste plus qu'à faire fonctionner votre imagination et réviser vos maths pour générer de belles courbes 3D. Le code source, le binaire Rémi THOMAS Richard Clark
Vos commentaires
Vous devez être identifié pour pouvoir commenter l'article. |


