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

W4 Express Java Discussion :

Différence entre Héritage/Modèle/Vue


Sujet :

W4 Express Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 40
    Points : 37
    Points
    37
    Par défaut Différence entre Héritage/Modèle/Vue
    Question existentielle:

    Quelles sont les différences entre créer des classes avec héritage/modèle/vue et quelles sont les meilleures pratiques dans un contexte de maintenance à long terme? (Et je mets de côté les possibilités de rendre une classe abstraite, ou de l'importer d'un autre projet... Sans oublier les structures d'attributs ou la possibilité de joindre deux tables de la bd dans une classe... Je vous ai mentionné les relations de composition?).

    Et la question à 1000$: Comment cela affecte la performance de l'appli? Ici, je peux avoir des 100 000 de données.

    Ça va pour le concept d'héritage, si on a une pensée "java".
    Une "vue" sur une classe, alors c'est comme une VIEW en SQL?
    Que vient faire le modèle (template)?

    J'ai un cas concret et très classique à réaliser : j'ai un modèle de données PERSONNE qui peut être un EMPLOYÉ, CLIENT, CONTACT etc. Un EMPLOYÉ peut être DIRECTEUR, REPRÉSENTANT etc. Jusqu'ici, j'ai pris une approche de relation avec composition mais ça me semble lourd et ça devient compliqué si je veux filtrer à des niveaux supérieurs. Et j'ai des infos que je n'ai pas besoin à des niveaux inférieurs.

    Au Québec, on dit que c'est une discussion à avoir en buvant une bière...

  2. #2
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Citation Envoyé par rdmontreal Voir le message
    Question existentielle:
    Quelles sont les différences entre créer des classes avec héritage/modèle/vue et quelles sont les meilleures pratiques dans un contexte de maintenance à long terme?
    Ce sont tous des concepts différents, donc il n'y a pas vraiment de réponse à ta question (qui n'a d'ailleurs pas vraiment de sens). Si tu as besois de faire de l'héritage et bien tu en fait. Sil il te faut des vues, tu va les créer. Il n'y a pas de "mieux" ou "moins bien", ça dépend de ce que tu veux/dois faire.

    Citation Envoyé par rdmontreal Voir le message
    Et la question à 1000$: Comment cela affecte la performance de l'appli? Ici, je peux avoir des 100 000 de données.
    La performance d'une application ne se mesure pas avec des concepts.

    C'est simplement la maitrise de toute ces choses qui va faire qu'une application est performante ou non. Tu peux très bien faire des choses qui marchent très bien avec peu de moyen. A l'inverse, tu peux aussi faire planter le plus gros des PC avec une requête SQL mal construite..

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 40
    Points : 37
    Points
    37
    Par défaut
    Petit rappel: la question est posée dans le contexte Business First - Application Composer et Application Engine.

    Pour ce qui est de la performance, il faut comprendre comment l'App Eng gère ses objets. Si j'ai 10 000 "personnes" dans ma bd, est-ce qu'App Eng va instancier 10K objets PERSONNE et 10k EMPLOYE si j'utilise un héritage/modèle etc. Si j'ouvre deux formulaire PERSONNE et EMPLOYE, est-ce que les objets communs sont partagés/référés? Comment les notifications JMS, les actions imports/exports sont affectées? etc. Concrètement, j'ai des cas où un formulaire prend +20 secondes à s'afficher ça n'a rien à voir avec SQL, le serveur ou le poste de travail. Et c'est avec des données de test qui représentent moins de 10% du volume réel.

    Il y a probablement des "bonnes" ou "mauvaises" pratiques. Je ne peux que faire des suppositions. Mais peut-être que des développeurs BF ont de l'expérience et peuvent partager leur vécu et leurs préférences.

    Praticiens, exprimez-vous!

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 40
    Points : 37
    Points
    37
    Par défaut
    Exemple de vécu:
    Le manuel utilisateur de BF indique comment créer une vue en moins de 20 lignes. Donc, rien de particulier à noter.

    Alors je crée une vue, j'ajoute une relation de composition pour un besoin spécifique. App Composer le permet.

    Quand je lance l'appli:
    [FATAL] BF AppEngine : Application can't start, BF AppEngine : a F_BIND_INFO must be used for STORMClassPartyCustomerViewRelationCustomer (because it belongs to class info STORMClassPartyCustomerView that has a C_BIND_INFO)

    Alors on cherche une autre approche. Et on recommence. Ma solution temporaire: créer toute les relations dans la classe mère, les cacher... Ça me semble un détour.

Discussions similaires

  1. Différence entre méthode, méthodologie et modèle
    Par adrian07 dans le forum Méthodes
    Réponses: 14
    Dernier message: 19/02/2021, 18h58
  2. Différence entre modèle métier et vue métier
    Par krolis dans le forum Pentaho
    Réponses: 1
    Dernier message: 29/06/2013, 11h45
  3. Différence entre Héritage et Interface?
    Par jeremypd dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 05/06/2008, 00h09
  4. Différence entre MVC et le modèle BCE
    Par mimosa803 dans le forum Architecture
    Réponses: 6
    Dernier message: 23/05/2008, 11h23
  5. [Conception] Quelle est la différence entre ces modèles ?
    Par ukanoldai dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 10/01/2007, 16h17

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