IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Choix stratégique entre main et classes personnelles


Sujet :

avec Java

  1. #1
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut Choix stratégique entre main et classes personnelles
    Bonjour tout le monde.
    Je suis confronté à ce que j'appèlerais "un dilemme du hérisson".

    Actuellement lorsque je travaille sur mon code, j'ai deux choses.
    Form1.java (Mon main en quelque sorte)
    GestionProp.java (Ma classe fourre tout)
    La question que je me pose.
    Ne serait-il pas mieux de faire la chose suivante:
    GestionProp
    -Crée un fichier
    -Modifie un fichier (Ajoute une clé=donnée)
    -Modifie un fichier (Met à jours une clé par sa donnée)
    -Modifie un fichier (Retire une clé et sa donnée)

    GestionRep
    -Test le path d'un répertoire
    -Test le path d'un répertoire et d'un fichier contenu dans le répertoire
    -Crée un répertoire
    -Crée un sous répertoire
    -Automatise
    -Lance un test du path
    -Le répertoire n'existe pas, on lancera "Créer un répertoire"
    -Le répertoire étant créer
    -Lance "Test le path d'un répertoire et d'un fichier contenu dans le répertoire"
    Et enfin mon main
    -Récupère le path
    -Transmet le path à Automatise de GestionRep
    -Test à nouveau le path avec le fichier properties
    -Le path est bon, on crée un properties
    -Transmet le path/Fichier.properties à Crée un fichier de GestionProp
    -Suite du programmme
    Est-ce la bonne solution ou une seule classe doit tout faire par elle même?
    J'avoue que c'est plus une question de stratégie que de facilité. Le but étant de ne pas tout re-coder entre une classe et une autre en limitant les dépendances de l'une à l'autre.

    Pour ceux qui ont un peu de pratique, j'aimerais avoir votre avis sur le sujet.
    Merci beaucoup.

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    J'ai l'impression que tu raisonnes en fonctionnel et pas du tout en objet.
    Il te faut un objet qui gère l'intégralité du fichier de propriétés du point de vue utilisateur. Cet objet se débrouille pour faire sa cuisine, on n'a pas besoin de savoir ce qu'il fait et comment il le fait. Il encapsule les données et les traitements. Libre à toi d'utiliser des sous-objets pour construire cet objet mais ces sous-objets resteront "invisible" aux autres objets qui l'utiliseront.
    Tu dois partir d'un schéma générique, avec la définition des méthodes. Peu importe le contenu des méthodes tant que tu connais les signatures et les fonctionnements aux limites. Le corps des méthodes pourra ainsi être développé "dans le bureau d'à côté" sans aucune incidence sur ton propre développement.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  3. #3
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Je comprend bien ce que tu me dit la dinobogan.

    Mais ce que j'ai du mal à saisir c'est la dépendance entre classe.
    Ce qui me donne quelques cas assez précis:
    -Soit je fait un main qui, appelle plusieurs classes, chacune d'elle sachant quoi faire en interne, ceci provoque des doublons dans chaques classes (Ce que je veux a tout prix éviter)

    -Soit je fait un main qui, appelle plusieurs classses, chaque classe à son rôle bien déterminé (Ce qui me semble logique mais qui peut, a un moment donné se révélé lourd au niveau du main, car il faudra sans cesse jonglé entre les classes - J'irais plus volontier dans ce sens (et ca n'empêche pas de voir comme chaque objet, ici je parle de facilité de programmation et de compréhension du code))

    -Soit je fait un main qui, appelle une classe, qui appelle une autre classe (Ce que je pense pas pratique car il y a des dépendances entre classe, mais on a évité le cafouillage dans le main pour le déplacé ailleurs (La ne parlons plus d'objets mais de chef cuisinier mettant son grain de sel un peu partout!))
    Ce que j'aimerais c'est voir ce qui se fait de plus propre, en exemple, pour des projets de grande ampleur, avec objet et donc manipulation de classes.

    Après ce qui se passe dans une classe, ne me pose aucun problème car j'en ai déjà réalisé par le passé et j'arrive sans problème a les manipulé en tant qu'objets.

    Merci.

  4. #4
    Membre confirmé
    Avatar de william44290
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2009
    Messages
    400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 400
    Points : 575
    Points
    575
    Par défaut
    Je ne suis pas le plus qualifié. Mais je met dans mon main des objets concrets, ceux-ci font appel à des controleurs qui eux font appels a des objets bas niveau.

  5. #5
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Bon et bien, ne cherchez plus!
    La réponse est en fait bien simple.
    Classe 1 -> méthodes indépendantes
    Classe 2 -> méthodes indépendantes
    Classe 3 -> méthodes pouvant être écrite de façon identique aux deux autres classes
    Main -> appel de la classe 3 -> traitement des réponses
    Main -> appel de la classe 2 -> traitement 1
    Main -> appel de la classe 2 -> traitement 2
    Main -> appel de la classe 1 -> traitement 1
    etc...

    Voila qui résous en partie le problème cité dessus.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Choix écran entre linux et windows
    Par Alain15 dans le forum Windows XP
    Réponses: 2
    Dernier message: 13/08/2006, 22h42
  2. [SQL] Lister les méthodes et les paramètres d'entrée d'une classe
    Par arnolem dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 11/08/2006, 19h55
  3. Choix écran entre linux et windows
    Par Alain15 dans le forum Administration système
    Réponses: 6
    Dernier message: 08/08/2006, 11h49
  4. Quel choix faire entre 2 portables ?
    Par nesquik dans le forum Ordinateurs
    Réponses: 3
    Dernier message: 04/12/2005, 10h27
  5. Tomcat et classe personnel non trouvée.
    Par swirtel dans le forum Tomcat et TomEE
    Réponses: 6
    Dernier message: 15/02/2005, 14h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo