TRADUCTEUR ALGO VISUAL BASIC .NET/C#

tintoret Messages postés 2 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 29 avril 2009 - 29 avril 2009 à 16:28
cs_Edydy Messages postés 2 Date d'inscription mercredi 6 juillet 2005 Statut Membre Dernière intervention 13 septembre 2009 - 13 sept. 2009 à 03:25
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/49938-traducteur-algo-visual-basic-net-c

cs_Edydy Messages postés 2 Date d'inscription mercredi 6 juillet 2005 Statut Membre Dernière intervention 13 septembre 2009
13 sept. 2009 à 03:25
Salut, comme tu l'as dit... tu es ouvert a toute proposition et tout commentaire critique...

Je ne suis pas pro-c# (j'en ai fait très peux dans ma vie) mais, j'espère quand même que tu te rends compte que ton code est totalement inefficace.

Pour un premier essai, pour apprendre ok... mais comme application pour ton BTS info... j'aurai fait ça, je me serais fait trucidé par mes profs!

Premièrement, les regex ne sont vraiment pas approprié pour les "compilateurs" (renseigne toi sur leur fonctionnement et leur coût).

Secondement, tes regex sont recompilée à chaque coup... une amélioration possible est d'utiliser des regex "pré-compilée".

Cela dit, quoi que tu fasses, ton programme sera toujours inefficace... as-tu essaie de compiler 100 K lignes et de voir le temps que ça te prenait?

Soit, je ne peux que t'encourager à continuer bien évidement, et bien sur à mieux te renseigner sur les programmes futurs que tu souhaiteras écrire afin d'éviter de re-écrire un programme inutilisable comme celui-ci :)

"Apprendre oui, faire n'importe quoi non..."
rhonin33 Messages postés 10 Date d'inscription jeudi 18 octobre 2007 Statut Membre Dernière intervention 22 juillet 2011 3
3 mai 2009 à 01:23
Trop de fautes, je recommence :

Ok, try...catch j'en ai fait qu'un seul je crois ce n'est pas assez, pour le gros pavé je pense que cela concerne surtout la fonction Remplacement qui est rempli de pas mal de If... Après mon choix de structure étant, je ne peux malheureusement pas enlever cette impression de pâté.

Pour le problème de couche, je vais donc créer deux dossiers : En gros je vais le faire en Objet, à savoir une classe qui aura mes fonctions que j'appelle de l'autre côté, dans le "visuel.

Donc en gros bien séparer, le visuel avec les fonctions Regex. C'est ce que tu pensais?^^

En tout cas merci beaucoup pour ton aide !
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
2 mai 2009 à 13:56
en toute sincérité je n'ai pas non plus eu le temps de regardé en détails.
Je ne pense pas en avoir énormément non plus.
Si on le limite a l'architecture du logiciel lui même et non pas au code un problème apparait : tu as coder la partit logique dans la couche de présentation ce qui induit en cas de problème d'exécution des problèmes au niveau de la couche de présentation tel que "écran freezer" ou "ne répond pas", ou encore un plantage complet de l'application pour une simple défaillance (potentielle) du code.

et dans le code survolé :
pas de try catch
et le code en super gros pavé

il y a probablement d'autre chose mais comme indiqué j'ai pas eu le temps de regarder en détails
rhonin33 Messages postés 10 Date d'inscription jeudi 18 octobre 2007 Statut Membre Dernière intervention 22 juillet 2011 3
1 mai 2009 à 22:58
Oui je crois qu'on m'en a déjà parlé. Cependant dans mon idée je pensais qu'avec des Regex je pouvais m'en sortir, je suis donc parti de cette idée la. Pour être franc je n'avais même pas cherché s'il y avait un autre moyen de faire une sorte de traduction algo en code.

Faudra que je m'y penche malheureusement je passe mon BTS bientôt j'aurais pas le temps de toute refaire dans cette application, mais cet été si j'ai le temps je verrais ce que je peux faire^^

Merci du lien en tout cas, par contre petite question : Je débute en C# (c'est ma toute première application), d'habitude je développe en Visual Basic, j'avais envie de changer. Es-ce qu'au niveau du code il y a des choses qui ne vont pas? (optimisation par exemple^^) Voila. Merci encore
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
30 avril 2009 à 19:18
pourquoi ne pas avoir implementé un Parser/Lexer de C# & vb.net a cet effet ?

http://www.codeproject.com/KB/recipes/grammar_support_1.aspx

voila un très bon article & code traitant du sujet, de plus un fichier de regle pour le C# 3.0 est fournit avec.
Le code permet à la fois de créé ses parser avec le "PEG Generator" & le post pro
qui débite du code C# 3.0 et plus (utilisation d'expression lambda)
mais il permet aussi (après de très légère manipulation du projet de base) de rajouter son code C# généré a la liste des parser utilisable et donc de pouvoir a la volé modifier & tester son parser.
Il permet aussi de générer un AST (l'arbre issue du Parse) qui lui permettra de reconstruire du code par la suite.
rhonin33 Messages postés 10 Date d'inscription jeudi 18 octobre 2007 Statut Membre Dernière intervention 22 juillet 2011 3
29 avril 2009 à 18:39
Voila j'ai fait ce que tu m'as proposé :P
rhonin33 Messages postés 10 Date d'inscription jeudi 18 octobre 2007 Statut Membre Dernière intervention 22 juillet 2011 3
29 avril 2009 à 17:37
T'as réussi à me motiver d'ici ce soir on aura le C# j'ai déjà trouvé un moyen de résoudre mon problème^^ Puis ca grossira un peu mon AP^^
rhonin33 Messages postés 10 Date d'inscription jeudi 18 octobre 2007 Statut Membre Dernière intervention 22 juillet 2011 3
29 avril 2009 à 17:19
Salut ! Content que ca plaise je suis aussi débutant en C#, j'ai commencé à voir pour traduire en C# c'est pas si difficile, mais j'ai juste des problèmes pour placer la déclaration de variables (elles se mettent avant tous les using...) une fois ce problème réglé je pense pouvoir y arriver^^
tintoret Messages postés 2 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 29 avril 2009
29 avril 2009 à 16:28
Super pour le débutant que je suis. Serait il possible de le développer pour avoir
la traduction des algos diréctement en C#? Merci d'avance
Rejoignez-nous