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

C# Discussion :

C# et base de données..


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 71
    Par défaut C# et base de données..
    Salut à tous je débute en C#.
    Tout d'abord je vous explique mon cas :
    J'ai pas mal de notions d'objet(Je suis en BTS INFORMATIQUE DE GESTION), et de programmation.
    Seulement j'ai toujours programmé en PHP malheureusement (avec tout ce qui va avec, javascript, ajax etc..).
    Programmant principalement des applications de gestions, Windows Forms me sera très utile. Et c'est là qu'est tout le problème :
    J'ai lus quelque part que les formulaires et les requêtes SQL devaient être séparé. Si c'est vrai comment faire ? Creer des méthodes d'une classe ou une méthode = une requête SQL ? Ne serait-ce pas un peu trop .."lourd" ?

    Merci d'avance de votre réponse

  2. #2
    Membre expérimenté
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Par défaut
    Et bien en fait je ne sais pas trop qu'elles sont les avis des autres. Mais ce que je te conseil de faire c'est peut être de regarder comment implémenter MVC dans ton application histoire de bien séparer les couches interface, contrôle des données et données.

    A coté de ca, je peux te dire que par exemple j'utilise en général 1 objet pour chaque requête. Exemple : Tu as une table dans laquelle tu vas requeter (Sélectionner, Modifier ou Supprimer) et tu crée un objet qui contiendra les champs de la table que tu veux utiliser.

    Si tu as besoin de plus de détails n'hésite pas a regarder des tutos il y'en a bcp sur ce site. Si tu veux envoie parle moi en détail de ce que tu veux faire a ton application et nous pourrons en parler. Peut être que je pourrai mieux t'orienter.

    Bonne année.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 71
    Par défaut
    Merci de ta réponse.
    Est-ce difficile d'implanter un MVC en c# ?
    Sinon, j'ai un projet assez flou concernant la gestion de Mobil-Home.
    Le problème c'est que je ne peux vraiment pas te dire de quoi il est constitué vue que je suis vraiment en phase d'apprentissage et de test de c#.
    Pourrait-tu m'expliqué un peu plus précisément ton conseil ?
    Merci d'avance je vais au lit, en espérant que demain matin je vois un jolie post

  4. #4
    Membre Expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Par défaut
    Le MVC2 est assez simple. Plus que l'ASP.NET traditionel je trouve. J'avais un peu laissé tombé l'ASP.NET car ca devenait lour (viewstate de la mort, mix presentation et code, les etats de la page,etc...) et le MVC2 résoud tout ça de manière assez élégante. De plus, MVC2 ne lutte pas contre la nature de web, au contraire de l'ASP.NET (ou ils tentent de faire du winform avec du web).

    La seule chose c'est que pour un site très simple, tu auras plus vite un résultat avec ASP.NET qu'avec ASP.NET MVC2. Mais avec MVC2 tu auras plus facile pour les unit test, et c'est une base plus saine. Sur un site web plus conséquent, je pense que le MVC2 prendra, in fine, moins de temps que l'ASP.NET

  5. #5
    Membre expérimenté
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Par défaut
    En fait je pense que la première chose que tu dois faire c'est réfléchir a ce que tu veux faire de ton application. En effet en fonction des objectifs de ton application il faudra choisir si ce sera un client Léger ou un client lourd, si tu souhaites que les utilisateurs bénéficie d'une interface riche ou pas... Ces questions sont des questions auxquels tu dois répondre avant de te lancer.

    Concernant MVC, l'implémenter n'est pas très compliqué, j'ai déjà diriger quelqu'un vers cet Exemple qui l'a trouvé plutôt clair.

    N'hésite pas a demander de l'aide si certaines chose ne te paraissent pas clair.

  6. #6
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Citation Envoyé par EquinoxeDotNet Voir le message
    Le MVC2 est assez simple. Plus que l'ASP.NET traditionel je trouve. J'avais un peu laissé tombé l'ASP.NET car ca devenait lour (viewstate de la mort, mix presentation et code, les etats de la page,etc...) et le MVC2 résoud tout ça de manière assez élégante. De plus, MVC2 ne lutte pas contre la nature de web, au contraire de l'ASP.NET (ou ils tentent de faire du winform avec du web).

    La seule chose c'est que pour un site très simple, tu auras plus vite un résultat avec ASP.NET qu'avec ASP.NET MVC2. Mais avec MVC2 tu auras plus facile pour les unit test, et c'est une base plus saine. Sur un site web plus conséquent, je pense que le MVC2 prendra, in fine, moins de temps que l'ASP.NET
    Je crois que le Monsieur il parlait du MVC dans une appli Winform pas de ASP.NET MVC

  7. #7
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    J'ai lus quelque part que les formulaires et les requêtes SQL devaient être séparé. Si c'est vrai comment faire ? Creer des méthodes d'une classe ou une méthode = une requête SQL ? Ne serait-ce pas un peu trop .."lourd" ?
    Pas du tout au contraire ton code sera plus lisible et facilement réutilisable

    Pour ma part j'ai
    - une classe Wrapper qui effectue tous les dialogue ADO
    - Une classe par table (object) de la DB qui gere les insertions, update, etc..
    - Des classe metiers qui gerent les les requetes specifiques

    Ce qui fait que ta vue n'a qu'a gerer le binding comme tu l'entends mais elle ne contiendra aucune commande SQL ni manipulation "metier"
    Apres a toi de gerer le binding avec tes vues comme tu l'entends

  8. #8
    Membre Expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Par défaut
    Citation Envoyé par PitMaverick78 Voir le message
    Je crois que le Monsieur il parlait du MVC dans une appli Winform pas de ASP.NET MVC
    oups. Moi qui etait tout content de donner mon avis.

    Alors MVC en Winform, pourquoi ne pas passer en MVVM WPF?

  9. #9
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 273
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 273
    Par défaut
    Citation Envoyé par Adel13 Voir le message
    Salut à tous je débute en C#.
    Tout d'abord je vous explique mon cas :
    J'ai pas mal de notions d'objet(Je suis en BTS INFORMATIQUE DE GESTION), et de programmation.
    Seulement j'ai toujours programmé en PHP malheureusement (avec tout ce qui va avec, javascript, ajax etc..).
    Programmant principalement des applications de gestions, Windows Forms me sera très utile. Et c'est là qu'est tout le problème :
    J'ai lus quelque part que les formulaires et les requêtes SQL devaient être séparé. Si c'est vrai comment faire ? Creer des méthodes d'une classe ou une méthode = une requête SQL ? Ne serait-ce pas un peu trop .."lourd" ?

    Merci d'avance de votre réponse
    En fait, c'est une pratique de programmation dont tu entends parler.
    Le principe c'est que ce soit maintenable au maximum et surtout clair.

    Dans le principe, si tu veux faire du Winforms connecté à une base SQL; le modéle par défaut est dit "modéle vue".

    Après, ce n'est pas une obligation : il vaut mieux une forme bien développée qu'un découpage avec de la tuyauterie tellement lourde que tout devient illisible.

    Si tu entreprends de faire des écrans nombreux et lourds, typiquement, la réutilisation des composants et des requêtes te seront utiles.
    Si tu entreprends de faire une application avec 3 écrans, ca ne sera pas obligatoirement utile.

    En revanche, apprendre à structure du code et à utiliser la bonne architecture pour faire la bon travail, c'est toujours intéressant.

  10. #10
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Pour repondre a Adel13 (qui debute en C#) et à B.AF

    Personellement je suis loin d'etre un adepte des principes academique d'architecture et je considere qu'une application qui tourne et qui fait ce qu'on attends d'elle est beaucoup plus respectable qu'une application qui respecte toutes les regle de design mais qui oublie de respecter avant tout ce qu'on attends d'elle

    Cela etant je suis convaincu que meme pour une petite a application a deux forms et surtout quand on est débutant c'est le moment ou jamais de se casser un peu la tete pour essayer de mettre le moins de code possible dans la form quitte a concentrer toute la logique metier et l'acces aux données dans une seule classe a part
    Faire cet effort au début apporte tres vite un beaucoup plus grand confort de design et de conceptualisation par après.

  11. #11
    Membre expérimenté
    Avatar de Proteus91
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2010
    Messages : 150
    Par défaut
    Bonsoir Oli. Je suis plutôt d accord avec ton propos. Trop respecter les règles tue la créativité. Cependant il faut appeler un chat un chat. Une classe pour accéder aux données, une ou plusieurs vues et gérer la logique métier (le contrôle) c déjà du mvc. On est foutu même si on veut pas en faire on est formatté design pattern =).

  12. #12
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 273
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 273
    Par défaut
    Citation Envoyé par Proteus91 Voir le message
    Bonsoir Oli. Je suis plutôt d accord avec ton propos. Trop respecter les règles tue la créativité. Cependant il faut appeler un chat un chat. Une classe pour accéder aux données, une ou plusieurs vues et gérer la logique métier (le contrôle) c déjà du mvc. On est foutu même si on veut pas en faire on est formatté design pattern =).
    Winforms, c'est déjà du modéle vue tout court. :-)
    Moi ce que je dis c'est que se poser la question de faire un code très propre est intéressant. Après, c'est souvent que cette volonté prend le pas sur tout et que l'application devient un fourre tout qui contient 90% de plomberie et 10% de business logic; qui pour le coup devient elle difficile à maintenir.
    Après, qui à apprendre, autant en profiter pour apprendre un peu de bonnes pratiques

Discussions similaires

  1. Problème Base de données et CRecordSet
    Par LE CHAKAL dans le forum MFC
    Réponses: 3
    Dernier message: 20/08/2002, 11h59
  2. connexion base de donné
    Par saidi dans le forum MFC
    Réponses: 3
    Dernier message: 07/08/2002, 22h22
  3. [Concept] Stabilité d'une base de donnée
    Par lassmust dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 03/07/2002, 16h16
  4. Bases de données
    Par dev dans le forum C++Builder
    Réponses: 4
    Dernier message: 01/07/2002, 22h55
  5. associer une base de données(access) a un dbgrid
    Par ange1708 dans le forum MFC
    Réponses: 3
    Dernier message: 11/06/2002, 12h18

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