Précédent   Forum du club des développeurs et IT Pro > Dotnet > Général Dotnet > Débuter
Débuter Forum d'entraide pour bien débuter avec Dotnet
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 16/07/2012, 09h58   #1
batbaille
Invité régulier
 
Inscription : mars 2005
Messages : 27
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 27
Points : 7
Points : 7
Par défaut Architecture Petit Projet C#

Bonjour,
Je suis ancien développeur C++ et nouveau développeur C# sur .net.
J'ai pour projet (pendant 1 à 2 mois) de développer un outils interne (en client lourd) pour ma nouvelle petite entreprise.

Après une première phase d'étude, je souhaiterais l'avis de la communauté sur mes choix des différentes technologies .Net choisies.

Le logiciel devra permettre:
  • De saisir des infos (métier).
  • De faire un choix d'éléments (matériels et ressources humaine) dans une liste prédéfinie selon les infos saisies.
  • D'imprimer un document de l'ensemble des éléments choisis.
  • De mettre à jour annuellement la liste d'élément (matériels et ressources humaine).
  • De sauvegarder le travail en cours.

L'application se veut légère, simple d'utilisation et facile à déployer.
Elle doit marcher sous Windows en client lourd (pas de site web).
Elle intégrera une BDD dont la structure ne changera pas.

Voici le choix des technologies :
  • Langage : C# (choix naturelle car je viens du C++)
  • IDE : Visual studio C# Express (gratuit), avec possibilité de passer à Visual Studio Pro (mais je souhaiterai économiser le coût d'une licence à mon entreprise).
  • Framework : 3.5 (car déjà dispo sur Seven) sinon 4 si vraiment besoin.
  • GUI : Winform (plus simple à appréhender que WPF).
  • BDD : SQL Server Compact Edition (à priori tout à fais suffisante pour mon besoin)
  • Accés BDD : Linq to SQL(plus simple à appréhender que les Entity Framework).
  • Maj BDD depuis l'extérieur : Import Excel (pas de BDD antérieur existant et administrateur non informaticien)
  • Impression : Visual Studio for Office (nécessite la suite Office mais pas besoin de développer un moteur d'édition).
  • Sauvegarde du travail en cours : Sérialisation XML
  • Déploiement : Inno Setup
  • Gestion des sources : CVS ou SVN avec SourceForge.net

Que pensez vous des technologies .Net choisies ? Constatez vous une incohérence par rapport au projet ?

Merci d'avance à tous.
batbaille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2012, 10h16   #2
BenoitM
Expert Confirmé
 
Homme Benoît
Inscription : février 2003
Messages : 1 661
Détails du profil
Informations personnelles :
Nom : Homme Benoît
Âge : 32
Localisation : Belgique

Informations forums :
Inscription : février 2003
Messages : 1 661
Points : 2 789
Points : 2 789
Citation:
GUI : Winform (plus simple à appréhender que WPF)
Je peux comprendre mais si je suis pas spécialement pour, bon après il faut voir à quel point tu veux t'investir dans la technologie .Net, si c'est pour un seul projet c'est vrai que le coût peut être grand et peu rentable maintenant si tu comptes developper de futurs projets, ce temps sera amorti sur les différents projets

Citation:
Maj externe BDD : Import Excel
humm je prendrais des fichier csv voir xml si possible.

Citation:
Sauvegarde : Sérialisation XML
Que veux-tu sauvegardez via la sérialisation?
__________________
Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes
BenoitM est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2012, 10h58   #3
batbaille
Invité régulier
 
Inscription : mars 2005
Messages : 27
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 27
Points : 7
Points : 7
GUI :
Je prend note de ta remarque (@BenoitM) sur WPF, car effectivement j'espère que cela sera le premier d'une longue série. Les possibilités de ce dernier sont bien plus étendues et bien plus intéressantes. Je prévoie de structurer mon programme afin de rendre la GUI interchangeable. Je pense le faire en Winform dans un premier temps (ne l'ayant jamais utilisé, en réalisant mon prototype j'ai trouvé la programmation très intuitive) et ainsi passer plus de temps à lever les contraintes techniques restantes sur les autres aspects du projet. Selon le temps qui me restera je passerais la GUI sur WPF me permettant ainsi de me faire mon propre jugement sur la différence des deux technos (même si je perçois déjà que WPF reste incontournable).

BDD :
Pour la mise à jour de la BDD du programme, je pensais à l'import Excel car :
- il n'y a pas de base externe existante.
- l'administrateur de l'application n'est pas informaticien (connait pas SQL et les BDD relationnelles). Il construit ou met à jour sa bibliothèque sous Excel (qu'il a l'habitude d'utiliser) et l'importe dans l'application.

Sauvegarde :
Par "sauvegarde", j'entends la sauvegarde des infos en cours de saisie dans l'application. L'utilisateur souhaite sauvegarder son travail en cours et le reprendre plus tard ou le transmettre à un collègue.
Pour cela dans mon prototype, j'ai une classe qui contient toutes les valeurs des champs du programme, et j'effectue une sérialisation/dé-sérialisation XML (XmlSerializer) pour sauvegarder ou charger le travail en cours de l'utilisateur.

Je pense que pour ces deux derniers points, j'ai effectivement mal intitulé mes entêtes de ligne que je mets à jour pour les prochains lecteurs
batbaille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2012, 11h14   #4
tomlev
Rédacteur/Modérateur


 
Avatar de tomlev
 
Homme Thomas Levesque
Développeur .NET
Inscription : février 2004
Messages : 17 795
Détails du profil
Informations personnelles :
Nom : Homme Thomas Levesque
Âge : 31
Localisation : France, Paris (Île de France)

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

Informations forums :
Inscription : février 2004
Messages : 17 795
Points : 34 077
Points : 34 077
Citation:
Accés BDD : Linq to XML (plus simple à appréhender que les Entity Framework).
Euh, Linq to XML c'est pour manipuler du XML, pas une base de données...
Tu pensais peut-être à Linq to SQL ? C'est effectivement un peu plus simple qu'Entity Framework, mais pas tant que ça, et c'est beaucoup plus limité. A long terme Entity Framework est sans doute un meilleur choix...
__________________

Pas de questions techniques par MP ! Le forum est là pour ça...

Tutoriels : Les markup extensions en WPF - La sérialisation XML avec .NET (Aller plus loin) - Extraction de données de pages web à l'aide de HTML Agility Pack
Projet : Dvp.NET, la librairie .NET open-source des membres de Developpez !
tomlev est actuellement connecté   Envoyer un message privé Réponse avec citation 20
Vieux 16/07/2012, 11h20   #5
batbaille
Invité régulier
 
Inscription : mars 2005
Messages : 27
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 27
Points : 7
Points : 7
Désolé de ma confusion (@tomlev), c'est effectivement "Linq to SQL" que je voulais dire. Je le change dessuite sur mon post principal.

Merci pour ton avis, je vais donc profiter de ce petit projet pour regarder également l'Entity Framework et comparer les deux technos.
batbaille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2012, 10h16   #6
batbaille
Invité régulier
 
Inscription : mars 2005
Messages : 27
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 27
Points : 7
Points : 7
Ai je une autre alternative sur la génération de document autre que l'automation avec VSTO ?

J'ai bien trouvé l'impression sur les Winform mais je trouve que c'est pas top niveau mise en page.
batbaille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2012, 10h18   #7
BenoitM
Expert Confirmé
 
Homme Benoît
Inscription : février 2003
Messages : 1 661
Détails du profil
Informations personnelles :
Nom : Homme Benoît
Âge : 32
Localisation : Belgique

Informations forums :
Inscription : février 2003
Messages : 1 661
Points : 2 789
Points : 2 789
Citation:
Envoyé par batbaille Voir le message
Ai je une autre alternative sur la génération de document autre que l'automation avec VSTO ?

J'ai bien trouvé l'impression sur les Winform mais je trouve que c'est pas top niveau mise en page.
Il y a CrystalReport mais il n'est pas fourni avec la version express de visual studio
__________________
Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes
BenoitM est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2012, 15h22   #8
batbaille
Invité régulier
 
Inscription : mars 2005
Messages : 27
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 27
Points : 7
Points : 7
Je souhaite utiliser un hébergeur de projet pour gérer mes sources, couplé avec un logiciel de gestion de version CVS ou Subversion.

J'ai pensé tout d'abord au célèbre site SourceForge mais je me suis aperçu qu'il hébergait exclusivement du OpenSource (philosophie non appliqué dans ma société).

Connaissez vous un autre site gratuit permettant l'hébergement de projet (non OpenSource) qui peut être couplé avec CVS ou Subversion ? Merci
batbaille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2012, 20h14   #9
tomlev
Rédacteur/Modérateur


 
Avatar de tomlev
 
Homme Thomas Levesque
Développeur .NET
Inscription : février 2004
Messages : 17 795
Détails du profil
Informations personnelles :
Nom : Homme Thomas Levesque
Âge : 31
Localisation : France, Paris (Île de France)

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

Informations forums :
Inscription : février 2004
Messages : 17 795
Points : 34 077
Points : 34 077
Pour les systèmes de contrôle de version :
- CVS est complètement obsolète, je connais plus personne qui l'utilise
- SVN est doucement en train de suivre la même voie, mais c'est encore très largement utilisé
- TFS a l'air pas mal, mais je connais pas très bien. L'intégration à Visual Studio est native, ce qui est assez pratique
- La tendance aujourd'hui est plutôt aux systèmes de contrôle de version distribués, comme Git ou Mercurial

Pour les hébergeurs
- Sourceforge : un peu pourri je trouve... c'était bien il y a 15 ans mais ils ont oublié d'évoluer depuis
- CodePlex : très bien. Supporte SVN, TFS, Git et Mercurial, il y a un tracker de bugs et un wiki
- Google Code : pas mal. Supporte SVN, Git et Mercurial, il y un tracker de bugs et un wiki
- GitHub : assez sympa, très à la mode ces derniers temps. Supporte uniquement Git. Pas de tracker de bugs. Le système de wiki est directement intégré à la gestion des sources (fichiers .md)

Par contre tu auras du mal à trouver un hébergement gratuit si c'est pas de l'open source. GitHub permet de créer des dépôts privés, mais dans ce cas il faut payer...

EDIT: apparemment ça existe quand-même...
http://stackoverflow.com/questions/4...ublic-projects

EDIT2: un comparateur ici :
http://www.svnhostingcomparison.com/
__________________

Pas de questions techniques par MP ! Le forum est là pour ça...

Tutoriels : Les markup extensions en WPF - La sérialisation XML avec .NET (Aller plus loin) - Extraction de données de pages web à l'aide de HTML Agility Pack
Projet : Dvp.NET, la librairie .NET open-source des membres de Developpez !
tomlev est actuellement connecté   Envoyer un message privé Réponse avec citation 10
Vieux 19/07/2012, 23h16   #10
batbaille
Invité régulier
 
Inscription : mars 2005
Messages : 27
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 27
Points : 7
Points : 7
@tomlev : Merci beaucoup pour cette récap très instructive.
batbaille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2012, 10h14   #11
Nathanael Marchand
Rédacteur/Modérateur

 
Avatar de Nathanael Marchand
 
Homme Nathanael Marchand
Expert .Net So@t
Inscription : octobre 2008
Messages : 3 520
Détails du profil
Informations personnelles :
Nom : Homme Nathanael Marchand
Âge : 26
Localisation : France, Paris (Île de France)

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

Informations forums :
Inscription : octobre 2008
Messages : 3 520
Points : 7 962
Points : 7 962
Avec Visual Studio 2012 qui arrive, il va y'avoir un TFS 2012 Express qui sera gratuit pour les petits projets. Il y a également la version online qui est ouverte: tfspreview.com (qui va évoluer sur une version non preview payante mais également gratuite pour les petits projets).

Pour Entity Framework, je plussoie complètement. Linq To SQL n'est pas forcément la meilleure idée.

SQL CE: es tu sur de ce choix? Prendre une base de données fichier implique plein de choses et notamment qu'il est impossible d'avoir de la concurrence d'accès.

Enfin, denière chose, il est tout à fait possible de faire du .Net en C++ avec C++/CLI si tu es plus à l'aise avec
Nathanael Marchand est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2012, 09h38   #12
batbaille
Invité régulier
 
Inscription : mars 2005
Messages : 27
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 27
Points : 7
Points : 7
J'ai essayé VS2012 avec tfspreview.com. C'est fonctionnel et très pratique malheureusement je tique vraiment sur le skin ...

Je vais sérieusement me pencher sur Entity Framework.

Concernant SQL CE (natif avec VS2010), je trouve que c'est une manière douce de se remettre à l'utilisation d'une base relationnel. Pour les besoins de mon projet actuel, il me semble amplement suffisant.

Je savais pour le C++/CLI mais je souhaite apprendre le C#(on en dit tellement de louange)
batbaille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/08/2012, 11h07   #13
dkmix
Membre éprouvé
 
Avatar de dkmix
 
Inscription : septembre 2007
Messages : 373
Détails du profil
Informations personnelles :
Localisation : Jamaïque

Informations forums :
Inscription : septembre 2007
Messages : 373
Points : 467
Points : 467
Bonjour,
Citation:
Ai je une autre alternative sur la génération de document autre que l'automation avec VSTO ?

J'ai bien trouvé l'impression sur les Winform mais je trouve que c'est pas top niveau mise en page.
Pour la génération de documents offices, je vous conseille d'utiliser l'Open XML SDK, qui fonctionne sans office sur la machine et évite les pb de processus "fantôme" .
EPPlus
marche bien pour des fichiers excels

Pour du reporting, je préfère personnellement les rdl/rdlc plutôt que Crystal Report
dkmix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2012, 10h18   #14
Pongten
Modérateur
 
Avatar de Pongten
 
Homme Rémy Mainil
IT Analyst & Software Developer
Inscription : juin 2002
Messages : 1 022
Détails du profil
Informations personnelles :
Nom : Homme Rémy Mainil
Âge : 32
Localisation : Belgique

Informations professionnelles :
Activité : IT Analyst & Software Developer
Secteur : Communication - Médias

Informations forums :
Inscription : juin 2002
Messages : 1 022
Points : 1 896
Points : 1 896
Personnellement, je suis un habitué de TFS, et j'ai installé chez moi la version TFS Express 2012 (gratuite).
C'est super simple à installer et à administrer et l'intégration est parfaite (logique !!).
C'est utilisable depuis VS 2010 sans problème (à part pour créer les projets, mais là il suffit d'installer le client 2012).

Côté BDD, je déconseille SQL CE... J'ai travaillé avec et à part vraiment pour un tout petit projet c'est trop limitatif. On ne peut, par exemple, pas modifier le nom d'une colonne ou d'une table, pas de trigger ni de procédure stockée, pas d'accès concurrent, etc...

Si le côté BDD sans avoir à installer un serveur est privilégié, il y a le tout récent LocalDB (fournit avec SQL Server Express 2012, et je crois même qu'un MSI existe pour une installation autonome).
Cela offre les même possibilité qu'un SQL Express. Dans les grandes lignes, lorsqu'un accès à la BDD est requis, une instance du moteur LocalDB est créée pour accéder à la BDD. Après 20 min d'inactivité, l'instance est automatiquement déchargée.
A part au premier accès BD qui prend un peu plus de temps (mais qui est contournable via l'établissement d'une connexion par exemple dans une tâche parallèle au moment du démarrage de l'application) c'est rapide, et cela apporte beaucoup plus de souplesse que SQL Ce.

Côté VS, c'est vrai que le changement de look est radical pour VS2012, mais il y a pas mal de changements sous le capot et il est assez bien plus rapide et apporte pas mal de nouveautés qui facilitent la vie

Pour le Reporting, il y a aussi Microsoft Report, mais je ne l'ai que très peu testé (j'utilise principalement l'outil de Telerik)
__________________
Si ton problème a une solution, rien ne sert de t'inquiéter..
Si il n'en a pas, t'inquiéter ne sert à rien

Ma Page
Pongten est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 12h49.


 
 
 
 
Partenaires

Hébergement Web