i absolut verehre ReSharper und würde ohne sie nicht funktionieren, aber es gibt ein paar Fallstricke, die ich in gelaufen und gelernt zu vermeiden:ReSharper gotchas
- erlauben ReSharper Stringliterale automatisch wirklich beißen können umbenennen in solche Fälle, wenn Ihre Objektvariablen den Spaltennamen in Ihrer DAL SQL- oder anderen String-Konstanten entsprechen. Ich habe gelernt, dass statt ungeduldig die Enter-Taste drücken, wenn der zweite Umbenennungsdialog erscheint, ich wirklich sehen muss, was ReSharper vorschlägt und oft den String literals Umbenennungsschritt überspringe.
- Dies ist ein wenig heimtückischer: Wenn Sie Solution-Wide Analyse aktiviert haben, wird ReSharper Ihnen sagen, ob öffentliche Methoden verwendet werden. Dies schließt Getter und Setter in Eigenschaften ein. Es ist ein großartiges Feature, aber was ReSharper nicht weiß, ist, dass beim Entwerfen einer Ansicht, die im Designer angezeigt wird (Formular, Benutzer-Ctrl), die Eigenschaften-Getter und Setter zur Entwurfszeit aufgerufen werden und nicht angezeigt werden in der Zusammenstellung. Daher wird ReSharper vorschlagen, dass die Getter oder Setter dieser Eigenschaft privat gemacht oder einfach entfernt werden können. Wenn Sie jedoch die Anpassung vornehmen und anschließend die Ansicht im Designer laden, stürzt der Designer ab, weil die Eigenschaft nicht verfügbar ist und die Fehlermeldung nicht genau ersichtlich ist. Kurz gesagt, ein Programmierer muss beim Entwurf einer Ansicht sorgfältig Vorschläge für die Verwendung von Eigenschaften berücksichtigen.
Das sind meine Großen. Was gibt es sonst noch, die mich und andere ReSharper-Fans beißen könnte?
Das Umbenennen von Verwendungen in Strings ist nur eine blöde Eigenschaft. Es beißt mich die ganze Zeit in den Arsch und ich will nie Strings suchen. Der ganze Punkt der Refactoring ist, dass es kugelsicher ist. Das Umbenennen in Strings ist nie kugelsicher - ich weiß nicht, warum sie es überhaupt anbieten. –
@Kirk: Ich stimme zu. Zumindest sollte es standardmäßig deaktiviert sein. –