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 :

Alternative à ma classe abstraite.


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 5
    Par défaut Alternative à ma classe abstraite.
    Bonjour à tous,

    Je commence tout juste un projet Java/JEE avec spring. (c'est du tout nouveau pour moi).
    J'ai différentes méthodes dans mes différents services web. Je veux pouvoir "valider" les paramètres avant de faire mes appels à la base de données. J'ai donc décidé de créer une classe abstraite avec une méthode abstraite valider() et plusieurs méthodes spécifiques à chaque type de validation que je souhaite faire. Ainsi je fais hériter mes différentes implémentations de mes services de ma classe abstraite et je redéfinis dans chacune d'elle la méthode valider();

    Cette solution me semble pas très "propre".
    J'aimerai savoir si il y a une meilleure alternative à la création de ma classe abstraite? Sans forcement passer par une API (mais pourquoi pas), peut être juste avec un autre design parttern (Wrapper ou Adapter).

    Je dois pouvoir faire de la validation "customisée" avec la création d'une liste de code d'erreur.

    Merci.

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    La classe abstratie t'oblige de tout faire hériter. Si tout ce qui t'intéresse et d'avoir une méthode valider() sur tous tes web service, crée un interface avec cette méthode et implémente là dans chaque service.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 5
    Par défaut
    Oui me semblait la meilleure solution au départ, mais j'ai également besoin d'avoir des méthodes "communes" d'où la classe abstraite pour la factorisation.

    Faut-il que je créer une autre classe dans laquelle j'implémente ces méthodes?

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    Tu peux déclarer seulement la méthode valider en abstract sans corps. Ce qui oblige les classes qui l'héritent à l'implémenter.

    A+.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 5
    Par défaut
    Exactement, les deux solutions sont possibles.

    L'héritage multiple n'étant pas possible, j'ai finalement opté pour une interface avec ma méthode valider() et un attribut ValideParametre, classe contenant les différentes méthodes "communes". Comme ça mon service pourra toujours hériter d'une classe dans le futur.

    Merci.

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

Discussions similaires

  1. [Debutant] Une classe abstraite en parametre ?
    Par kiroukou dans le forum Débuter
    Réponses: 8
    Dernier message: 03/02/2005, 15h05
  2. [Débutant(e)] toString + classes abstraites
    Par debdev dans le forum Langage
    Réponses: 9
    Dernier message: 26/01/2005, 15h22
  3. [Debutant][Conception] Classes abstraites et interface.
    Par SirDarken dans le forum Langage
    Réponses: 4
    Dernier message: 29/10/2004, 00h02
  4. Classe abstraite / MVC
    Par caramel dans le forum MVC
    Réponses: 5
    Dernier message: 01/04/2003, 09h27
  5. pb constructeurs classes dérivant classe abstraite
    Par Cornell dans le forum Langage
    Réponses: 2
    Dernier message: 10/02/2003, 19h02

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