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 :

Application n tiers - conseil de conception et outils


Sujet :

avec Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    382
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 382
    Points : 73
    Points
    73
    Par défaut Application n tiers - conseil de conception et outils
    Bonsoir,



    je suis en plein développement d'une application Java avec 2 grosses parties :
    1. IHM
    2. Métier
    3. Persistance
    Cependant, je ne sais pas quels outils prendre. Pour l'IHM, je pense là faire sur Swing donc implémenter le pattern MVC.


    Pour le métier, je ne sais pas quoi faire. Utiliser du RMI Simple, EJB 3, Web Service ?.... De plus quels pattern utiliser ici ? (Cependant, l'implémentation de DTO est obligatoire pour envoyer des objets entre l'IHM et la couche Métier). La création d'un web service me semble bien. Ainsi, je pourrais faire appels a celui-ci quelque soit le langage et type de terminal (ordinateur, terminal dans une gare par exemple..., téléphone) sauf erreur de ma part.

    Persistance, je doit pouvoir sauvegarder les données aussi bien dans des fichiers texte, xml, envoyer les données sur un autre serveur, une base de données. Après quelque recherche je pense utiliser DAO ici. Avec pour les DAO de base de données Hibernate. (Le choix vous semble t'il correct ?)

    Pour chaque couche, nous avons bien sur des interfaces qui sont manipuler par la couche supérieur. Ainsi la couche IHM connais les interface métier de la couche métier mais ne connais pas l'implémentation.
    Donc, je peux utiliser Spring et modifier facilement les références de mes objets.

    Pouvez-vous me donner vos avis et choix de conception ? De plus, j'ai entendu parler de SOA. Ce pattern peut-il m'aider pour le développement de mon application ?

    merci.

  2. #2
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 27
    Points : 31
    Points
    31
    Par défaut
    Bonjour,

    Le principal point de ton architecture, et je crois que tu l'a bien compris, c'est que tes couches soit indépendantes.

    Pour la partie IHM, je ne connais pas trop swing, mais le choix ne me parait pas idiot.

    Pour la partie métier, je ne te conseille pas de partir sur des technos trop compliquées ou mal maitrisées. Si ta couche métier est bien écrite, générer des webservices à partir de cette couche n'est pas très difficile et rapide (quand on connait).

    Pour la partie persistance, j'aime bien hibernate pour l'accès aux données, mais les ejb3s sont tout aussi appropriés.

    Le tout avec spring pour faire de l'injection de dépendance, c'est bien. Ça permet de bien maintenir tes couches indépendantes.

    Par contre, j'ai pas trop compris pourquoi tu ne veux pas tout simplement appeler tes couches directement (au moins dans un premier temps).
    Pour moi, voila comment j'aurais architecturé ton projet :

    * une classe dao qui accède à ta base de donnée
    * une classe métier qui appelle ta classe dao en faisant de l'injection de dépendance.
    * une classe IHM qui appelle ta classe métier en faisant de l'injection de dépendance.
    Le tout avec des interfaces.

    Puis dans un deuxième temps, j'aurai rendu accessible ma partie métier en présentant des webservices à l'aide de technos comme xfire, ou spring webservices.

    En tout cas, les conseils que je peux te donner sont :
    - que ton architecture tienne la route. Une mauvaise architecture peut te donner du fil a retordre par la suite.
    - ne partir sur des techno qu'après les avoir testées. Les ejb3, ou hibernate ne sont pas facile à mettre en oeuvre.
    - bien comprendre ce qui se passe lorsque tu utilises des framework comme spring. Et aussi quels sont les aboutissants de telles techno.



    Voila j'espère que ça peux t'aider.

  3. #3
    Nouveau membre du Club
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2006
    Messages : 32
    Points : 38
    Points
    38
    Par défaut
    Le choix est vraiment très vaste, ça varie beaucoup selon le besoin et les compétences.
    par exemple on s'oriente vers les web service si l'application est hétérogène.
    SOA pour une application distribué. Pour les interfaces ça dépend des compétence en web design.

Discussions similaires

  1. Conseil pour la conception d'outil PLM
    Par Antonitzer dans le forum Autres Solutions d'entreprise
    Réponses: 0
    Dernier message: 20/11/2014, 10h14
  2. Application n-tiers avec WCF - Petit conseil
    Par McFlaille dans le forum Windows Communication Foundation
    Réponses: 0
    Dernier message: 30/09/2009, 10h52
  3. Conseil sur conception : Référencer les applications
    Par alladdinbh dans le forum Modélisation
    Réponses: 3
    Dernier message: 25/09/2006, 17h19
  4. Problème application multi-tier et Oracle ?
    Par bds2006 dans le forum Bases de données
    Réponses: 1
    Dernier message: 29/06/2006, 11h58
  5. [Conception]Quel outil graphique utiliser pour schéma BDD?
    Par nicoaix dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 16/01/2006, 12h34

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