Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1148 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Structuration de programme en C#

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Structuration de programme en C#

n°2245090
difference​sfinies
Posté le 05-12-2014 à 17:37:39  profilanswer
 

Bonjour,
J'essaie en C# ce que je pratiquais avec d'autres langages, la division du travail, et tombe dans une impasse avec les classes static. Je n'ai rien tiré, ou rien su tirer, de la documentation MS ni d'autres sources. L'application a une interface graphique WPF (Windows1, par défaut) dont le code C# est généré dans Windows1.xaml.cs. J'y ai ajouté d'autres méthodes uniquement dédiées aux interactions. En revanche, pour la lisibilité du programme, plutôt dense, j'ai déporté les calculs dans des classes auxiliaires déclarées static. Il n'y a a priori aucune nécessité de les instancier, elles n'existent que pour traiter des données restituées ensuite dans des tableaux static et repris par la classe principale pour être présentés à l'écran. Tout ceci fonctionne. Comme les calculs sont longs, une barre de progression doit indiquer leur degré d'avancement. Ce contrôle n'est visible que de Windows1.xaml.cs mais une méthode de la classe principale qui mettrait à jour la valeur du contrôle est en C# forcément non static or elle ne peut justement être appelée des autres classes que si elle est static. Comment sort-on de ce cul-de-sac ?

mood
Publicité
Posté le 05-12-2014 à 17:37:39  profilanswer
 

n°2245095
TotalRecal​l
Posté le 05-12-2014 à 17:59:35  profilanswer
 

Bonjour,  
 
Merci d'aérer ton post parce que là c'est très pénible à lire, excuse moi de te le dire.
 
J'ai l'impression que tu mélanges plein de choses qui n'ont rien à voir entre elles.
 
Essaie de mieux séparer tes problématiques (UI / traitement background), et donne nous des exemples concrets.  
Renseigne toi sur les patterns de développement en WPF (MVVM, etc).
 
Pour information, les classes static c'est à éviter, généralement quand ça pullule c'est qu'il y a problème général dans l'architecture.  
Les méthodes static se justifient, mais elles doivent être pures ( http://en.wikipedia.org/wiki/Pure_function ), et aussi courtes que possibles.
 
Merci et bon courage


---------------
Topic .Net - C# @ Prog
n°2245116
difference​sfinies
Posté le 05-12-2014 à 19:47:21  profilanswer
 

C'est particulièrement simple, concret et sans mélange.
En VBA, par exemple, on sépare le code en modules, notion qui n'existe pas en C#. Comment faire ? Réponses trouvées : créer des classes. Réponses complémentaires : des classes static dont les méthodes static peuvent être appelées sans qu'il soit besoin d'une instance.
Parfait ? Non, static ou pas, il semble impossible depuis ces classes de modifier l'état d'un contrôle d'interface même en passant par la classe principale. Alors ?

n°2245271
TotalRecal​l
Posté le 08-12-2014 à 09:33:32  profilanswer
 

Apparemment tu ne lis pas ce qu'on te dit, et tu veux juste appliquer ce que tu crois déjà connaître, donc je ne vois pas l'intérêt de venir demander conseil :??:


---------------
Topic .Net - C# @ Prog
n°2245339
difference​sfinies
Posté le 08-12-2014 à 16:13:57  profilanswer
 

Si je pose une question, c'est que mes recherches n'ont pas abouti et que j'ai besoin d'explications. Abstenez-vous de ces commentaires qui n'apportent rien.

n°2245355
TotalRecal​l
Posté le 08-12-2014 à 16:42:27  profilanswer
 

Permettez moi pourtant de juger ma première réponse pertinente, ainsi que l'invitation à clarifier la question par égard pour ceux qui seraient tentés d'y répondre.  
Mais si vous ne voyez aucune réaction constructive à y apporter, je vous laisse poursuivre seul vos "recherches"...


---------------
Topic .Net - C# @ Prog

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  Structuration de programme en C#

 

Sujets relatifs
programme en cCompteur population mondiale en C (en fonction du temps)
[C#][Windows Form] "Form" toujours au dessus d'un autreBesoin d'aide (résolution d'un probleme sur un programme fini )
exercice C ( debutant) demande d explicationsun problème d'un mon programme ?
Python programme aideProblème code C++ débutant watershed
programme en language C 
Plus de sujets relatifs à : Structuration de programme en C#


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR