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

Composants FMX Delphi Discussion :

Application mobile de type liste + données maitre-détail


Sujet :

Composants FMX Delphi

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

    Informations forums :
    Inscription : Septembre 2009
    Messages : 26
    Points : 33
    Points
    33
    Par défaut Application mobile de type liste + données maitre-détail
    Bonjour,

    Je souhaite faire une application mobile (iOS, Android) du genre CRM light avec Delphi XE7.
    J'ai d'abord une liste des contacts et lorsque je choisi un contact, j'ai :
    - une fiche contact (nom, prénom, adresse, tél...), une dizaine de champs qui prennent l'espace d'un écran 4''. Je dois pouvoir ajouter ou supprimer des contacts
    - Une liste des différents échanges que j'ai eu avec lui (0-N), date, objet de l'appel, réponse, à rappeler le... Je dois pouvoir ajouter et supprimer un échange
    - une liste des matériels de production qu'il possède (marque, modèle). Je dois pouvoir ajouter ou supprimer des matériels.

    Liste ->
    ------------->Détail du contact
    ----------------------------> Echanges
    ----------------------------> Matériels

    Je m'interroge sur la bonne façon de concevoir mon application mobile. Dois-je faire :
    Choix 1 : plusieurs Forms : 1 pour le ListView, une pour la fiche Contact, une pour les échanges et une dernière pour les matériels.
    Choix 2 : 1 seule Form avec un TabControl et 4 TabItem : le 1er pour la liste, les 3 autres pour la fiche contact, les échanges et les matériels
    Choix 3 : 2 Forms : la première pour la ListView et la seconde avec un TabControl et 3 TabItem

    J'ai fait un essai avec 4 forms et un autre essai avec 1 form et 4 TabItem. Je trouve la première solution plus facile à développer et à maintenir mais malheureusement plus lente qu'avec une seule form et 4 TabItem.
    La seconde solution est plus rapide en exécution mais malheureusement plus difficile à maintenir puisque tout le code est dans la même Form.
    J'avais une autre piste : Est-il possible de créer 4 Objets distincts et de les insérer à l'exécution dans chaque TabItem ?

    Merci pour vos avis éclairés

    Olive

  2. #2
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 439
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 439
    Points : 5 858
    Points
    5 858
    Par défaut
    salut

    je ne me suis pas encore penché sur la programmation mobile
    mais en discutant avec certain programmeur mobile temps reel il m'ont fait comprendre qu'il utilise des module externe pour la gestion .
    ce qui m'incite à te répondre qu'il est possible de créer des objet métier (non visuel) et de les relier a tes form

    Par expérience j'ai appris qu'il faut le plus possible dissocier le code fonctionnel à l'affichage
    la maintenance n'en est que plus simple

  3. #3
    Membre chevronné
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 941
    Points : 1 951
    Points
    1 951
    Par défaut
    Bonjour,

    Je différencie aussi le code métier de l'ihm, je crée des classes qui sont relatives au métier et indépendante de l'ihm.

    Citation Envoyé par olpons Voir le message
    Choix 1 : plusieurs Forms : 1 pour le ListView, une pour la fiche Contact, une pour les échanges et une dernière pour les matériels.
    Choix 2 : 1 seule Form avec un TabControl et 4 TabItem : le 1er pour la liste, les 3 autres pour la fiche contact, les échanges et les matériels
    Choix 3 : 2 Forms : la première pour la ListView et la seconde avec un TabControl et 3 TabItem
    En ce qui concerne le choix 1, comment fais tu appel aux différentes forms ?

    Je travaille sur un projet pour mobiles et j'ai adopté le choix 2 avec tout le code métier dans différentes classes. C'est vrai que cela fait une Form principale et unique pour toute la partie ihm mais je n'ai pas encore trouvé cela gênant car j'utilise des objets métiers qui sont gérés dans les différentes classes ( donc des unités différentes de la Form )

    Citation Envoyé par olpons Voir le message
    J'avais une autre piste : Est-il possible de créer 4 Objets distincts et de les insérer à l'exécution dans chaque TabItem ?
    Je comprend pas ce que tu veux dire, peux tu préciser ? Tu parles de quels objets ?

  4. #4
    Membre émérite
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    Mars 2006
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 504
    Points : 2 776
    Points
    2 776
    Billets dans le blog
    10
    Par défaut Une autre voie
    J'ai fait un essai avec 4 forms et un autre essai avec 1 form et 4 TabItem. Je trouve la première solution plus facile à développer et à maintenir mais malheureusement plus lente qu'avec une seule form et 4 TabItem.
    Tu peux tirer aussi le meilleur de tes deux options.
    Voir exemple ci-joint en VCL que tu peux facilement transcrire en FMX
    Cet exemple est tiré des cours que je donne régulièrement sur DELPHI
    Fichiers attachés Fichiers attachés

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 26
    Points : 33
    Points
    33
    Par défaut
    J'ai déjà créé et testé mes classes métiers et ma couche d'accès à la base de données.
    La question du choix Forms / TabControl me parait essentielle en terme de rapport performance/maintenabilité sur le long terme.
    Savez-vous si la documentation Embarcadero aborde ce sujet en détail ? Je n'ai rien trouvé.

  6. #6
    Membre chevronné
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 941
    Points : 1 951
    Points
    1 951
    Par défaut
    Citation Envoyé par olpons Voir le message
    J'ai déjà créé et testé mes classes métiers et ma couche d'accès à la base de données.
    La question du choix Forms / TabControl me parait essentielle en terme de rapport performance/maintenabilité sur le long terme.
    Savez-vous si la documentation Embarcadero aborde ce sujet en détail ? Je n'ai rien trouvé.
    Il y a ceci mais je ne pense pas que cela répondre exactement à ce que tu recherches, sinon il me semble que Thierry Laborde en parle dans les dev du jeudi, par contre, je ne sais plus dans quel épisode ( peut être saison 2 épisode 12 ? à voir )

    Ce que je me souviens c'est qu'il explique comment faire appel à d'autre forms pour les applications mobiles, mais tu connais peut être déjà...

  7. #7
    Membre émérite
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    Mars 2006
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 504
    Points : 2 776
    Points
    2 776
    Billets dans le blog
    10
    Par défaut Suite
    Bonjour,

    Attention tu semble programmer Object Pascal à la sauce Java style MVC avec un zeste de MS-Winddows. Tu te prives de toute la potentialité de FMX. Si tu as pu regarder ce que je t'ai envoyé poses moi des questions je te donnerai au fur et à mesure les éléments pour mener à bien ton projet.

    Cordialement

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 26
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par free07 Voir le message
    Il y a ceci mais je ne pense pas que cela répondre exactement à ce que tu recherches, sinon il me semble que Thierry Laborde en parle dans les dev du jeudi, par contre, je ne sais plus dans quel épisode ( peut être saison 2 épisode 12 ? à voir )

    Ce que je me souviens c'est qu'il explique comment faire appel à d'autre forms pour les applications mobiles, mais tu connais peut être déjà...
    Oui, je les ai trouvés :
    Avec les forms : http://www.ledevdujeudi.com/le-dev-d...e-2eme-partie/
    Avec le tabControl : http://www.ledevdujeudi.com/le-dev-d...i-1ere-partie/

    La première solution permet d'isoler le code. La seconde offre l'aventage de gérer la navigation suivant/précédent sur la même fiche.
    Un mix des deux est envisageable en insérant le layout de chaque fiche appelée dans un tabitem.

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 26
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par ALWEBER Voir le message
    Bonjour,

    Attention tu semble programmer Object Pascal à la sauce Java style MVC avec un zeste de MS-Winddows. Tu te prives de toute la potentialité de FMX. Si tu as pu regarder ce que je t'ai envoyé poses moi des questions je te donnerai au fur et à mesure les éléments pour mener à bien ton projet.

    Cordialement
    Je fais en effet aussi du Java depuis 4 ans et du Delphi depuis la v1.
    Ta solution est celle que j'ai retenue. Thierry Laborde la montre en effet dans la saison 3, épisode 2, 2ème partie de la matinée (lien dans ma précédente réponse).

Discussions similaires

  1. Application mobile avec base de données externe
    Par tsiboko dans le forum Android
    Réponses: 1
    Dernier message: 12/02/2015, 12h58
  2. Réponses: 2
    Dernier message: 04/03/2014, 12h48
  3. Réponses: 1
    Dernier message: 29/06/2011, 14h27
  4. Application mobile avec base de données
    Par visualo dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/10/2009, 11h41
  5. Réponses: 3
    Dernier message: 11/06/2006, 19h03

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