82 votes

2008 : resharper vs CodeRush

Je sais qu'il y a de nombreuses discussions si Resharper ou CodeRush est mieux. Dans mon entreprise, nous utilisons actuellement Resharper et je suis bien avec elle.

Mais la semaine dernière j'ai regardé un screencast sur CodeRush et de la pensée, c'était incroyable. Il ya tellement de nombreux "nouveaux" refactorings que j'ai tout de suite pensé à une migration.

Quel est votre outil de prédilection pour la refactorisation de code de l'analyse, de la navigation à l'intérieur de Visual Studio etc et pourquoi? Dans quels domaines pensez-vous est Resharper mieux et au cours de laquelle les zones CodeRush?

91voto

Jay Kimble Points 916

Honnêtement, ils sont tous deux égaux à la tâche. Ce que j'ai trouvé, c'est que CodeRush/Refactoriser Pro a plus raide de la courbe d'apprentissage, mais une fois que vous avez formé vous-même et de l'environnement (et mis un peu de frappes) CodeRush devient vraiment efficace.

ReSharper est tout aussi bon et ne laissez personne vous tromper sur ce point. Ils ne sont pas égaux si et il dépendra de vos besoins. CodeRush est plus extensible (OMI), mais si vous déplacer de l'un à l'autre, vous allez manquer un couple de choses de l'autre.

En juillet, j'ai pris un mois et j'ai fait tout ce que vous dites à propos de faire (j'ai migré de ReSharper à CodeRush et blogué à ce sujet).

Je suis très heureux avec le résultat final (il ya un couple de choses que je suis en manque... CodeRush de l'Analyse de Code n'est pas encore tout à fait à l'ReSharper du niveau et de le "Déplacer" refactoring.. au-delà que j'ai trouvé tout ce dont j'avais besoin).

Voici les articles de mon blog, donc vous pouvez vous référer à eux (si vous voulez)...

Bonjour CodeRush!
Après La Semaine 1
2 semaines avec CodeRush
CR/PR Wrapup

Comme je l'ai dit bien que les deux outils sont excellents et en fonction de votre volonté d'apprendre un nouvel outil, vous pourriez être mieux avec ce que vous avez en ce moment.

33voto

Mark Miller Points 792

Le CodeRush refactoring de l'expérience est plus rapide et plus lisse (moins de touches, moins de dialogues de zéro, moins de mouvements de la souris) que ReSharper. Lorsque vous renommez ou de modifier une signature qui a des répercussions sur de nombreux fermé les fichiers sur le disque, CodeRush prend correctement en charge le multi-fichier de l'annuler. En revanche, ReSharper présente une boîte de dialogue vous demandant si vous souhaitez annuler un soutien pour cette Renommer, et si vous dites oui, ReSharper produit pour ouvrir tous les fichiers touchés par le refactoring.

CodeRush a plus de refactorings de ReSharper, bien que ReSharper a une belle Déplacer membre de la classe de refactoring a encore frappé CodeRush. ReSharper a également une belle renommer fonctionnalité qui vous permet de renommer les variables qui contiennent un nom de classe lorsque vous renommez la classe. Par exemple, si je renomme un "Vaisseau spatial" de classe "Vaisseau spatial", ReSharper trouve identifiants avec des noms comme "superSpaceship" et laisse entendre qu'il sera renommé "superSpacecraft".

CodeRush est un peu plus rapide que ReSharper sur Visual Studio démarrage et sur le projet s'ouvre. ReSharper utilise plus de mémoire, jusqu'à six fois plus vraiment de solutions de grande taille (par exemple, 1000+ classes).

ReSharper rapports plus de l'arrière-plan des problèmes de code que CodeRush, et les problèmes de code ReSharper spectacles sont en général plus utile (par exemple, type de paramètre peut être rétrogradé à une classe plus proche de l'objet), mais CodeRush comprend un code de problème de taches undisposed des variables locales pour mettre en œuvre IDisposable qui est très utile.

CodeRush navires significativement plus de modèles de code (comme VS fragments de code) que ReSharper, et CodeRush modèles sont conçus pour être parfaitement efficace (par exemple, "mme", développe une méthode qui renvoie une chaîne de caractères, "vb" crée une variable de type bool, et "nl.je crée un nouveau initialisé Liste). Les doigts de bénéficier de l'efficacité, mais les modèles de prendre un peu de pratique pour s'y habituer. Le CodeRush de formation à la fenêtre de la facilité de cette courbe d'apprentissage si vous avez alors vous code. Il est intéressant de noter, CodeRush modèles efficacement abstraction du langage de programmation, afin que les développeurs travaillent dans plus d'une langue (ou le passage d'une langue à l'autre) peut appuyer sur les mêmes touches et obtenir essentiellement le même code, quelle que soit la langue qu'ils sont de codage.

ReSharper a une belle Intellisense de remplacement et un paramètre intéressant outil de remplacement de pointe. ReSharper a un nom de variable suggestion de fonctionnalité qui est utile. ReSharper a aussi un code de reformatage de la fonctionnalité qui est très agréable.

CodeRush du TDD consommer-première déclaration fonctionnalités nécessitent moins de touches que ReSharper (voir ces dans gratuit CodeRush Xpress qui comprend la plupart de la consommation-première déclaration dispose d'expédition dans la version complète de CodeRush).

ReSharper de trouver toutes les références de la fenêtre comporte plusieurs volets pour chaque recherche effectuée, ce qui est agréable. CodeRush fournit seulement un volet pour la dernière recherche effectuée. CodeRush a un joli Onglet à la Prochaine entité de Référence qui vous emmène à travers toutes les références à un identifiant en appuyant simplement sur la touche de Tabulation (touche Maj+Tab vous permet de revenir). CodeRush de Trouver Toutes les Références s'affiche plus rapidement que ReSharper.

CodeRush de l'Unité de Test Runner sorti en 9.3 prend en charge plus de frameworks de test de la boîte (NUnit, MSTest, xUnit, et MbUnit). Le CodeRush lanceur de Test comprend également plus de le cadre attributs (par exemple NUnit est ExpectedException MatchType paramètre) et prend également en charge générées dynamiquement des tests (par exemple, RowTests, les Valeurs de l'attribut, les usines, les théories, etc.). Soutien pour les infrastructures de test est extensible et CodeRush inclut le code source pour chacun des framework de test des plugins.

15voto

Przemaas Points 788

J'ai été longtemps utilisateur de CodeRush + RefactorPro, alors que mon amie dans une équipe est à l'aide de Resharper.

Je voudrais vraiment avoir le code d'analyse au même niveau qu'il a dans la R#. CR est seulement de pauvres ici. R# excelle dans le code des fonctions de mise en page et a décent test runner. Dans les CR, il n'y a pas de code de mise en page et mise en forme d'outils et de test runner n'est pas encore sorti. Il est prévu dans le stade.

Concernant la navigation, nous trouver à la fois des outils de l'égalité.

Mon ami l'envie m'modèles de CR. R# modèles sont loin derrière. Aussi, la courbe d'apprentissage de la R#, c'est pire. CR est beaucoup plus facile à saisir. Aussi, les refactorings fournis par Refactoriser Pro sont mieux que dans la R#. Ils sont tout simplement plus facile de faire face avec. Ainsi, en matière d'écriture de code que j'ai trouver CR mieux.

Récemment, nous avons tous les deux essayé d'écrire un plugin pour mettre en œuvre les fonctionnalités que nous voyons en face de l'outil et que vous souhaitez avoir. J'ai été capable de faire ce waaaay plus facile pour les CR. L'extensibilité de DXCore est amasing.

Dans l'ensemble: R# a beaucoup plus de fonctionnalités, mais ils sont beaucoup plus difficiles à apprendre. Aussi, si vous trouvez quelque chose qui manque, CR est plus facile à étendre.

14voto

Darren Kopp Points 27704

CodeRush où c’est à l’homme. Je n’aimais pas resharpers intellisense, donc je l’ai éteint, qui rend resharper moins utile.

10voto

Sean Kearon Points 2670

C'est Resharper pour moi. Je l'ai utilisé car c'est le premier EAP et j'aime en morceaux! Comme vous le dites, il est de loin plus de refactoring - c'est la façon dont il me soutient dans la navigation et le code de la compréhension que j'ai utiliser beaucoup plus que le refactoring. Deux de mes fonctions préférées sont le nettoyage du code et des membres du type de mise en page.

Je trouve Tim commentaire fascinant où il dit:

il applique de façon intelligente elle-même à l'existant, des choses que vous ne

Je serais intéressé à entendre ce que c'est dans CodeRush. J'ai beaucoup de respect pour Developer Express produits.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X