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 :

Quels sont vos technologies et outils pour mieux développer en C#?


Sujet :

C#

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    332
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2002
    Messages : 332
    Points : 502
    Points
    502
    Par défaut Quels sont vos technologies et outils pour mieux développer en C#?
    Bonjour,

    J'ai joint une nouvelle entreprise il y a 6 mois et j'ai pour mandat de ramener à jour l'environnement de développement. En bref, nous avons un site web business et des outils et processus internes.

    Avant:
    Framework: .NET 3.5
    Interface: ASP.NET + jquery 1.6
    BD: SQL Server 2005
    ORM: Subsonic
    Source Control: SVN
    VS: 2010

    En cours ou très prochainement:

    Framework: .NET 4.5
    Interface: MVC 4.0 (razor) + jquery 1.8
    BD: SQL Server 2012
    ORM: Entity Framework
    Source Control: TFS 2012
    VS: 2012

    À cela s'ajoutent:

    Tests unitaires: XUnit (bah oui, ils faisaient pas de test unitaires...)
    Web Services: Web API (MVC 4.0 REST service)
    VS extension: Resharper 7.0, Postsharp
    IoC: probablement Ninject, sinon Windsow Castle
    Tests manuels: Chrome Advanced Rest Client, Fiddler/Wireshark.

    Ma question:

    Avez-vous des suggestions de librairies, outils ou frameworks (open source ou payants) qui pourraient remplacer ou s'ajouter aux items de ces listes?

    Je suis curieux de savoir ce que vous utilisez et pourquoi.

    Merci!

  2. #2
    Invité
    Invité(e)
    Par défaut


    Vu que tu utilises Entity Framework, les librairies/extensions qui te seront utiles :


    Pour les tests unitaires xUnit est très bien, j'ajouterai :


    Pour l'IoC j'utiliserai plutôt MEF qui vient déjà avec le framework .Net et très facile d'utilisation

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    332
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2002
    Messages : 332
    Points : 502
    Points
    502
    Par défaut
    Vu que tu utilises Entity Framework, les librairies/extensions qui te seront utiles :
    Cool je vais regarder cela.

    Pour les tests unitaires xUnit est très bien, j'ajouterai :
    Fluent: Cool
    Moq: Ouais, j'avais oublié de le mentionner.

    Pour l'IoC j'utiliserai plutôt MEF qui vient déjà avec le framework .Net et très facile d'utilisation
    J'ai regardé MEF et comme j'ai une expérience de plusieurs années avec Windsor Castle, je suis plus porté à enregistrer les types de façon explicite. Mais mes collègues semblent un peu intimidés par Castle, je regarde Ninject qui semble aussi plus simple.

    En tous les cas, merci des suggestions!

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 12
    Points : 5
    Points
    5
    Par défaut
    je vous recommande d'utiliser les Telerik (Grid, pagination.. )http://www.telerik.com/

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par danoi18 Voir le message
    je vous recommande d'utiliser les Telerik (Grid, pagination.. )http://www.telerik.com/
    DevExpress, Telerik et tous les autres concepteurs de contrôles graphiques je ne dis pas que je ne les recommanderai pas à personne mais franchement je réfléchirai 3 fois parce que c'est la galère quand tu veux personnaliser un truc un tout petit peu plus complexe.

    Babyneedle,

    Comme on dit il faut aussi faire gaffe à ne pas avoir une overdose de plugins ! Fais en sorte que toute l'équipe sache les 50% de ce qu'offre chaque outil qui sera utilisé. Surtout pour ce qui concerne Entity Framework si l'équipe ne comprend pas comment ça marche à 75% (comment sont générées les requêtes SQL derrière et utiliser au maximum les vues) alors là tu risques de te retrouver avec les problèmes de performances

  6. #6
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    C'est étonnant que h2s84 n'ait pas conseillé CodeFluent Entities mais c'est un outil que je conseille.

  7. #7
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    hs284 : DevExpress, Telerik et tous les autres concepteurs de contrôles graphiques, je ne dis pas que je ne les recommanderai pas à personne, je réfléchirai 3 fois ...
    Il y a aussi un problème commun à tous les "third parties" : l'environnement envisagé par babyneedle est à priori conçu pour la durée et , dans ce cadre, on limite/élimine le recours à des compléments non indispensables pour des raisons de perrenité.

    Quand on voit que Microsoft lui même ne maintient pas des compléments (je pense à XNA pour la 3D), l'utilisation de composant "third partie" introduit des risques sur la durée.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    332
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2002
    Messages : 332
    Points : 502
    Points
    502
    Par défaut
    Merci à tous pour les suggestions.

    Les choix de technos déjà faites ont été des sélections éclairées accompagnées de séances de formation auprès de l'équipe. Nous nous réservons une heure par semaine exclusivement pour cela.

    Pour Telerik, je comprends l'attrait mais en ce moment le code legacy utilise Devexpress et ça nous limite énormément. J'ai réussi à convaincre l'équipe de passer à des librairies plus basiques quitte à avoir un affichage moins élégant.

    Je me tiens loin de tout ce qui est third party et *implémentation*. J'aurais dû préciser que je recherche des outils et frameworks qui assistent en amont et en aval de l'implémentation ou qui simplifient la conformité à certains design patterns.

    Mon approche est de garder un environnement à envergure humaine, c'est-à-dire de choisir un nombre limité d'outils que chacun comprend, qui est bien documenté et supporté sois pas M$ ou la communauté et qui *favorise le loose coupling*.

    Si le développement des produits actuels est sclérosé (et pourquoi j'ai maintenant cette position) c'est justement parce que tout est *tight coupled*.

    Pour ce qui est d'Entity Framework, faut pas se soucier. Quand je travaillais dans mon ancienne boite, nous avions même créé notre propre ORM après la débâcle de LINQ to SQL et le 'bloating' de nhibernate.

    Notre règle est simple: chaque ligne de code est révisée par une tierce personne et chaque accès à une DB doit être évalué à savoir si un support différent est nécessaire (cache, fichier de config) ou si la responsabilité doit être déportée vers la DB (views, stored procedures).

  9. #9
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Pour revenir aux outils :
    - Altova XmlSpy pour la conception de schéma et l'édition XML.
    - et penser à un outil de comparaison de fichiers un peu plus évolué que WinDiff.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  10. #10
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2013
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

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

    Informations forums :
    Inscription : Février 2013
    Messages : 51
    Points : 83
    Points
    83
    Par défaut
    Bonjour,

    Je vous proposerais bien d'essayer NDepend qui permet d'analyser en profondeur vos applications.
    Grâce à cet outil (payant), vous pourrez trouver facilement les morceaux de codes les plus complexes, les endroits où il y a le plus de couplage...
    C'est idéal pour améliorer un soft et faciliter sa maintenance.

    Pascal
    Découvrez DotnetDojo, pour booster vos compétences de développeur

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    332
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2002
    Messages : 332
    Points : 502
    Points
    502
    Par défaut
    Citation Envoyé par PascalL67 Voir le message
    Bonjour,

    Je vous proposerais bien d'essayer NDepend qui permet d'analyser en profondeur vos applications.
    Grâce à cet outil (payant), vous pourrez trouver facilement les morceaux de codes les plus complexes, les endroits où il y a le plus de couplage...
    C'est idéal pour améliorer un soft et faciliter sa maintenance.

    Pascal
    Le code legacy est la chose la plus horrible que j'ai vu en 12 ans de carrière. Des 'GO TO', du code SQL dans le javascript, des classes DAL jusque dans le code behind du ASP, etc.

    Nous utilisons Resharper pour analyser le nouveau code. Nous migrons peu à peu les fonctionnalités vers des applications MVC 4.0/Web API et dans la définition de 'Code complete', je dois avoir vérifié qu'aucune dépendance n'a été ajoutée sans justification...

  12. #12
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2013
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

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

    Informations forums :
    Inscription : Février 2013
    Messages : 51
    Points : 83
    Points
    83
    Par défaut
    Bon courage, je sais que ça n'est pas facile.
    Découvrez DotnetDojo, pour booster vos compétences de développeur

Discussions similaires

  1. Quels sont vos défaults entretien pour developpeur?
    Par assine090 dans le forum Entretien
    Réponses: 14
    Dernier message: 28/11/2013, 09h10
  2. Réponses: 27
    Dernier message: 04/07/2011, 15h57
  3. Réponses: 10
    Dernier message: 05/11/2010, 08h06
  4. Réponses: 0
    Dernier message: 15/05/2009, 05h48
  5. Réponses: 7
    Dernier message: 21/02/2005, 13h28

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