septembre
2007
Une fois n’est pas coutume, je ne vais pas parler de C++/CLI mais de C# et plus particulièrement d’un outil que j’ai eu le plaisir de pouvoir essayer : Resharper.
C’est un outil qui s’intègre à Visual Studio et qui permet d’assister l’utilisateur dans ses développements. Plus fort que l’intellisense, il va aussi permettre d’analyser votre code, détecter des anomalies, prévoir des comportements suspects et proposer des solutions…
Il va bien sur proposer de l’auto-complétion, comme intellisense, mais aussi de l’auto-complétion avancée, comme proproser de résoudre un nom de type en rajoutant son using.
Comme auto-complétion avancée, il peut proposer des auto-complétions pour les foreach, de manière plus ou moins intéligente.
Exemple, on a dans notre classe un membre privé de type List<KeyValuePair<int, string>>
. Dans une méthode, on veut créer un foreach …
Ici, resharper va proposer automatiquement les variables de types IEnumerable qui sont dans la portée, en l’occurence, ici il va proposer notre liste. Et à coup de pressions sur tab on va pouvoir naviguer pour confirmer la proposition ou renommer les variables, etc …
Dans le cadre de l’analyse de code, il va nous permettre plusieurs manipulations. Entre autres, l’optimisation des usings en enlevant ceux non utilisés.
Comme autre exemple, il peut nous simplifier des expressions, comme ci-dessous :
ou encore :
Resharper nous conseille aussi sur certains aspects de notre code, conseils à suivre ou pas …
Il peut y avoir aussi certains conseils à ne pas suivre, comme ici par exemple :
Je trouve que laisser List<>
améliore la lisibilité, d’autant plus si on travaille à plusieurs.
Enfin voilà quelques fonctionnalités que j’ai trouvé intéressante et que j’ai voulu vous présenter. Il y en a bien d’autres, que vous pouvez consulter ici.
Pour conclure, je dirais que Resharper est un bon outil qui améliore la productivité si on le maitrise. Il y a énormément de choses, et pour être vraiment efficace, il faut connaitre les raccourcis clavier sur le bout des doigts.
Bien sur, on peut utiliser le menu, mais quand on veut rajouter un test automatique, ou renommer une variable ou une classe (fonctionnalité qui marche très bien d’ailleurs et qui propose meme de renommer le fichier si on change le nom d’une classe…), ou autres … on perd trop de temps à aller chercher dans le menu.
Comme inconvénient, bien sur j’en ai trouvé. J’ai constaté qu’il ralenti un peu le chargement de visual studio. Vous me direz, c’est normal si on rajoute quelque chose, et vous aurez raison :).
De temps en temps, il a un peu de mal à ouvrir une page aspx ou ascx, l’analyse de la page fait ralentir un peu l’affichage du fichier dans l’IDE.
Cet outil n’est pas parfait non plus. J’ai pu constater quelques problèmes, comme par exemple des fois par héritage, il voit des erreurs où il y en a pas (ex : une page qui hérite d’une masterpage et qui accède à une propriété de la master, il dit qu’il la trouve pas).
Certaines fonctionnalités ne sont pas implémentées, par exemple il ne reconnait pas le $ dans <% $Resources:SearchMessages, NoResult %>
.
J’ai également pu observer un ou deux plantages, mais je n’ai pas pris le temps de trouver un scénario pour reproduire le bug et ainsi le proposer pour résolution.
Un dernier mot, cet outil est payant, mais vous pouvez disposer d’une version d’essai non bridée de 30 jours, rendez vous sur la page de téléchargement. Cet outil est également disponible pour le code en VB.Net.
J’espère que ce billet vous aura donné envie d’essayer Resharper. En tous cas, moi, je l’ai adopté
A quand la version pour le C++/CLI ?
2 Commentaires + Ajouter un commentaire
Commentaires récents
- [Tests] Arrange Act Assert, une traduction ? dans
- [UnitTest][C#] Tester une méthode privée dans
- Récupérer une valeur d’un contrôle depuis une autre Form / inclusions croisées et déclaration anticipée dans
- Tutoriel : Utiliser la ListBox et l’Isolated Storage dans vos applications Windows Phone 7 avec Silverlight dans
- Tutoriel : Utiliser la ListBox et l’Isolated Storage dans vos applications Windows Phone 7 avec Silverlight dans
Archives
- janvier 2013
- avril 2012
- janvier 2012
- juin 2011
- janvier 2011
- décembre 2010
- novembre 2010
- septembre 2010
- juin 2010
- mars 2010
- février 2010
- janvier 2010
- décembre 2009
- novembre 2009
- octobre 2009
- septembre 2009
- août 2009
- juillet 2009
- mai 2009
- avril 2009
- mars 2009
- janvier 2009
- décembre 2008
- novembre 2008
- octobre 2008
- septembre 2008
- août 2008
- juillet 2008
- juin 2008
- mai 2008
- avril 2008
- mars 2008
- février 2008
- janvier 2008
- décembre 2007
- novembre 2007
- octobre 2007
- septembre 2007
- août 2007
- juillet 2007
- juin 2007
- mai 2007
ce qu’on peut dire aussi c’est que sur les gros projets, ca ralenti qd meme considérablement …
Je travaille en ce moment sur une solution qui comporte 150 projets, et là, on peut aller boire un café avant que ca soit chargé.
A la décharge de Resharper, sans ce plug-in, c’est déjà très lent
Effectivement Resharper s’avere immediatement indispensable …pour la programmation C#. Parce que en ce qui concerne la version VB.Net, ben c’est encore experimental on va dire. Pour l’avoir tester, de nombreuses fonctionnalites sont absentes et le manque se fait cruellement ressentir. Mais plus que tout, en ce qui me concerne, ca plombe les perfs de VS2005 a le rendre totalement inutilisable: 45 secondes pour un simple copier/coller o_O parce que Resharper s’affole en parallele a mettre a jour ses references.
Du coup je pleure, et je hais ma vie de developpeur 75% VB.Net 25% C#; je vais changer de boulot tiens!