Petite conception winforms vb.net

Résolu/Fermé
caroline - 30 avril 2014 à 09:12
Gigatrappeur Messages postés 226 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 3 juillet 2014 - 30 avril 2014 à 15:30
Bonjour,

j'aurais besoin de votre avis s'il vous plait sur la manière d'organiser un tout petit code en vb.net:

j'ai une Main (winforms) sur laquelle il y a un bouton B1 pour accéder à une fenetre2 (winforms). Jusqu'ici pas de probleme.
Sur cette fenetre2 j'ai un textbox dans lequel j'entre un texte et fais un petit controle dessus, pas de problème au niveau du code de ces 2 winforms.
Le controle que je fais sur ce texte se fait à partir d'une classe à part, la classe Checking. Donc j'ai 3 petites classes: Main, Fenetre2 et Checking.

Ma question est: où est il le plus judicieux d'instancier la classe Checking, une variable membre privée dans Main avec un getter serait il la meilleure solution? Sachant qu'il peut y avoir Fenetre3, Fenetre4...qui se serviront aussi de la classe Checking. Autre solution?

Merci pour vos précisions

8 réponses

Gigatrappeur Messages postés 226 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 3 juillet 2014 25
30 avril 2014 à 10:36
Bonjour,

Tout dépend de comment est construite ta classe Checking.
A t'elle vraiment besoin d'être instancié ?
Exemple :
Public Class Checking
    Shared Function Check(ByVal toValidate As typeOfObjectToCheck) As Boolean
        ' do something
        Return False
    End Function
End Class

Et pour utiliser :
Checking.Check(blabla)

0
Salut gigatrappeur, oui la classe checking doit être instanciée. Donc à partir de là une variable membre privée dans Main est il une bonne solution? Ya t'il mieux?

Et suivant le résultat en fait du parsing qu'elle fera, il y aura en bout de chaine un webservice à appeler. Donc là aussi je me demandais: où instancier une classe gérant les webservices suivant le résultat de checking...

Donc en gros j'ai ça: classe Main(winform principale) -> classe Fenetre2 -> Classe checking -> suivant resultat classe webservice appelant tout bêtement un webservice.
Je réfléchis au moyen pour organiser le plus efficacement ces 4 petites classes.

Merci pour tes précisions.
0
Gigatrappeur Messages postés 226 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 3 juillet 2014 25
30 avril 2014 à 10:48
Bonjour,

bon, quelques questions supplémentaires :
- Qui doit exécuter checking ? si c'est la fenetre 2, instancie ta classe Checking dedans.
- Qui fait appel à tes webservices ? Es-ce ta classe Checking ou une autre ?

J'ai un peu de mal à me représenter ce que tu attend.

0
Le checking peut être exécuté par Fenetre2, Fenetre3, Fenetre4...qui sont toutes des winforms pouvant etre appelées par des boutons du winform Main principal, donc en fait pour que toutes les FenetresX puissent utiliser le checking je me disais qu'instancier une variable membre privée type classe Check dans le Main était une solution, qu'en penses tu?

La classe Check s'occupera de l'appel aux webservices, donc là je me demandais: une variable privée de type webservice dans la classe Check serait elle une solution?

Winform Main -> on appelle par bouton (FenetreX) -> On fait un checking ici avec un getter sur une variable de type check dans le main par exemple -> et dans la classe check, si le résultat est bon on lance un webservice. Voilà juste le schéma d'éxécution basique, le code est court c'est juste que je cherche à savoir si mon organisation est bonne.

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Gigatrappeur Messages postés 226 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 3 juillet 2014 25
30 avril 2014 à 11:17
Ton architecture m'a l'air pas mal.
Le tout est que son développement te soit intuitif.
0
D'accord, merci pour ton avis gigatrappeur, oui le programme étant simple je ne voyais pas comment faire autrement...Juste une petite question: tu dis que l'organisation a l'air cool par expérience ou parce que comme moi tu ne vois pas d'autres solutions mieux organisées? Il n'y en peut être pas au passage...

PS: j'ai posé une petite question aussi aujourd'hui sur une petite interface mais je ne peux lire la réponse de celui qui a répondu alors que la tienne je peux la lire, tu saurais où est le problème par hasard?
0
Gigatrappeur Messages postés 226 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 3 juillet 2014 25
30 avril 2014 à 11:33
Je parle par expérience et en générale, le mieux est de faire au plus simple.
Si tu veux que je jette un coup d'oeil sur ton code, passe par un gestionnaire de version style Git et tiens au courant via un message privé.

Pour ton deuxième point, je ne vois pas de message parlant d'interface, peut-être es-ce sur un autre post ?
0
J'ai posté un message intitulé "Bouton et Interface" à 9h05 sur ce forum (.net et le même sur vb /vba, je m'étais trompée) et un membre m'a répondu mais je ne vois pas son message...
0
Gigatrappeur Messages postés 226 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 3 juillet 2014 25
30 avril 2014 à 11:48
0
Curieux car je ne vois rien du tout...c'est pas la première fois que ça arrive sur le forum je vais attendre un peu...
En tout cas merci bien pour ton avis!
0
Gigatrappeur Messages postés 226 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 3 juillet 2014 25
30 avril 2014 à 11:53
OK, pense à marquer le sujet comme résolu, si tu pense que c'est le cas.
0
J'aimerais mais le lien pour marquer résolu n'existe pas...
0
Gigatrappeur Messages postés 226 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 3 juillet 2014 25
30 avril 2014 à 15:30
J'ai demandé à ce que le sujet soit résolu.
0