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

Architecture Discussion :

Petite question sur l'architecture d'une application


Sujet :

Architecture

  1. #1
    Membre habitué Avatar de Mozofeuk
    Inscrit en
    Novembre 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 326
    Points : 133
    Points
    133
    Par défaut Petite question sur l'architecture d'une application
    Bonjour à tous et désolé pour ce titre peux explicite je l'avoue, mais je ne savais vraiment pas quoi mettre.

    Voila aujourd'hui nous avons une application qui fonctionne très bien, réalisée en C++ et QT. Le problème est que cette application ne cesse de grossir et que tous cela n'est pas très bien organisé .
    On me demande donc de repenser un peu toute la conception de l'application de manière à permettre une réutilisation de certaine partie du code, de mettre en place une meilleur organisation dans le code. Enfin de permettre aussi au cœur de mon application d'être réutiliser sur différente application. Par exemple notre application en QT et une application Web en DotNet.

    J'ai donc tout de suite pensé à la mise en place d'un Design Pattern tel que le MVC, car en plus QT permet de faciliter la mise en place d'un tel pattern (du moins c'est que je crois avoir lu ).

    Mes connaissances avec ce mode de développement étant limitée (je commence à me documenter sur le sujet) je me pose quelque question :

    -MVC est t-il une solution a mon problème ?

    Si oui,

    -Notre application s'appuie sur des données stockées dans une base sqlite (+un module spatialite). Mon model devra donc uniquement contenir tous ce qui concerne l'accès au données dans la base non ?

    -A partir de ces données récoltées on dessine divers informations sur une carte, sur des photos (cela dépend en fait du plugins utilisé). Donc si j'ai bien compris ma carte ou mes photos affichées seront en fait la vue, et toute les méthodes de dessin seront en fait le controleur ?

    -Du coup le seul code réutilisable pour développer une autre application (une appli Web en DotNet par exemple) serait en fait le model ?


    Mon autre soucis est que nous avons dans l'application une partie (un plugin) qui à partir d'un flux vidéo permet de remplir automatiquement la base de données. Ce plugins fait partie de ce que l'on voudrait être en mesure de pouvoir réutiliser mais je ne vois pas du tout dans quoi le mettre ?

    J'espère avoir été à peu près claire et avoir posté au bon endroit, Cordialement MoZo

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Oui c'est le bon endroit mais les questions que vous posez sont difficiles.

    Le problème est que cette application ne cesse de grossir et que tous cela n'est pas très bien organisé
    C'est en général la rançon du succès et donc plutôt positif.

    Néanmoins, comme on évite de tout ré-écrire à chaque évolution, la chose se transforme plus ou moins rapidement en plat de spaghettis et... estimer coûts et délais de certaines évolutions devient risqué.

    Enfin de permettre aussi au cœur de mon application d'être réutiliser par différente application
    Il faut définir ce que vous entendez par "cœur".
    Qu'est ce qui est dedans? Ce qui n'y est pas...
    Les interfaces entre ce cœur et le reste... Par exemple l'application existante en en QT et une nouvelle peau de l'application sous la forme de service Web en DotNet.

    MVC est une bonne approche pour la répartition des traitements à faire lors de la construction d'un IHM.... Pour ce qui est de la redistribution des rôles d'un existant, il faut voir.

    Notre application s'appuie sur des données stockées dans une base sqlite (+un module spatialite). Mon model devra donc uniquement contenir tous ce qui concerne l'accès au données dans la base non ?
    Les IHM (Qt et .NET) seront "au dessus" du cœur - qui reste à définir mais en architecture nous projetons -.

    Le cœur intègrera sans doute l'ensemble des données persistance et des modalités d'accès actuelle mais il devra embarquer une partie de la logique métier (qui est aujourd'hui plutôt dans le contrôleur).

    Note: Réduire le contrôleur pour faire gonfler le modèle est 'trendy' cherchez "Skinny Controller, Fat Model" sur Google

    -Du coup le seul code réutilisable pour développer une autre application (une appli Web en DotNet par exemple) serait en fait le model ?
    oui mais un model 'engraissé'.
    Faut-il construire une architecture adapté à son application tout en s'inspirant d'architectures existantes telles que MVC ou aligner ses besoins applicatifs avec des modèles tout faits?

    Si on veut contenter tout le monde nous pourrions dire que le modèle d'une application s'appuie sur le cœur - le coeur est un composant du modèle... et voilà.


    Mon autre soucis est que nous avons dans l'application une partie (un plugin) qui à partir d'un flux vidéo permet de remplir automatiquement la base de données. Ce plugins fait partie de ce que l'on voudrait être en mesure de pouvoir réutiliser mais je ne vois pas du tout dans quoi le mettre ?
    Dans le coeur... sans plus.
    Cordialement,
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Questions sur le développement d'une application
    Par clairetj dans le forum Mobiles
    Réponses: 0
    Dernier message: 04/02/2014, 08h48
  2. Question sur la commercialisation d'une application
    Par mobile5 dans le forum Projets
    Réponses: 0
    Dernier message: 05/04/2012, 18h15
  3. Question sur le démarrage d'une application WPF
    Par takinelinfo dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 28/07/2011, 08h18
  4. [SP-2007] Petite question sur les droits d'une liste de tâche ?
    Par Faro dans le forum SharePoint
    Réponses: 1
    Dernier message: 12/05/2009, 17h58
  5. petite question sur la récupération d'une variable
    Par minusette dans le forum Langage
    Réponses: 6
    Dernier message: 17/11/2005, 16h57

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