ReSharper

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
ReSharper
ReSharper
Типдодаток для Microsoft Visual Studio з 2003 по 2015
РозробникJetBrains
Стабільний випуск2016.1 (для VS 2015, 2013, 2012 and 2010) (14 квітня 2016; 8 років тому (2016-04-14))
Версії2022.2.2 (22 серпня 2022)-1">[1]
Операційна системаMicrosoft Windows
Ліцензіяперсональна, комерційна, за підпискою $13-$65 / міс.
Вебсайтjetbrains.com/resharper/

ReSharper (R#)додаток (add-on), розроблений компанією JetBrains для збільшення продуктивності роботи та автоматизації рефакторингу в середовищі Microsoft Visual Studio (підтримуються версії: 2003, 2005, 2008, 2010, 2012, 2013, 2015, 2017).

Здійснює миттєвий статичний аналіз коду (без потреби компіляції), передбачає додаткові засоби автозаповнення, навігації, пошуку, виділення синтаксису, форматування, оптимізації та генерації коду, надає близько 40 автоматизованих рефакторингів, спрощує модульне тестування в середовищах MSTest та NUnit.

Остання версія ReSharper 2016.1 для Visual Studio 2015, 2013, 2012 and 2010 була випущена в 2016. Забезпечено підтримку мов C# 6.0, VB11, JavaScript, CSS, HTML, ASP.NET, ASP.NET MVC, Razor, XML, XAML, WinRT, сценаріїв MSBuild та NAnt.

ReSharper є комерційним програмним продуктом. З 2015 року пропонується за підпискою. Мінімальна вартість щомісячної платні $12.9 для індивідуальних розробників. Однак, JetBrains надає можливість завантаження пробної версії програми на 30 днів.

Вступ

[ред. | ред. код]

ReSharper - поширений інструмент для підвищення продуктивності роботи, що дозволяє істотно збільшити функціональність Microsoft Visual Studio. Тисячі .NET розробників по всьому світу використовують ReSharper для перевірки коду, здійснення автоматичного рефакторингу та одержання допомоги в написанні якісного програмного коду. В даній статті наведено основні рекомендації щодо використання даної програми при розробці сучасних програмних продуктів.

Функції ReSharper

[ред. | ред. код]

Аналіз якості коду

[ред. | ред. код]

В арсеналі ReSharper передбачено понад 1300 перевірок коду. Програма підкреслює знайдені помилки просто у вікні редактора Visual Studio, і додатково відображає їх за допомогою відповідних маркерів. Індикатор у верхній частині панелі маркерів змінює свій колір та значок, якщо досліджуваний файл містить помилки або проблеми.

Помилки та попередження
[ред. | ред. код]

Помилки в програмі ReSharper відстежуються в режимі реального часу та виділяються червоним шрифтом або хвилястим підкресленням. Якщо навести вказівник миші на помилку, її опис буде виведено за допомогою відповідної підказки.

Визначення помилок в програмі за допомогою ReSharper

Крім того, ReSharper здійснює детектування ділянок коду, що не стають на заваді компіляції, але можуть суттєво знижувати якість розробленого продукту та перетворювати його на "бидлокод". Наприклад, ReSharper показує інформацію про посилання на простори імен та складання що не використовуються, неправильний формат рядків, оголошені, але не використані змінні тощо. Відповідні конструкції позначаються сірим кольором.

Попередження в середовищі ReSharper

Рекомендації
[ред. | ред. код]

У цьому випадку ReSharper здійснює більш глибокий аналіз коду. За даними з офіційного сайту, ReSharper лише привертає увагу розробника до тих конструкцій, які потенційно можуть бути покращені. Наприклад, ReSharper може запропонувати перетворити цикл до LINQ-виразу, використати ключове слово "var" та ін. Відповідні рекомендації виділяються зеленим кольором.

Поради
[ред. | ред. код]

Найменш надокучливими та помітними повідомленнями ReSharper є поради. На відміну від помилок, попереджень та рекомендацій, вони лише показують можливі шляхи збільшення якості програмних конструкцій.

Швидкі виправлення
[ред. | ред. код]

ReSharper надає можливість швидкого усунення більшості помилок, та дозволяє розв'язувати всі можливі проблеми миттєво. Швидкі виправлення представлено червоними (для помилок) та жовтими (в інших випадках) лампочками, які з'являються автоматично ліворуч від обраного рядка коду. Натиснувши на символ лампочки або ввівши комбінацію Alt Enter, обираємо необхідну позицію зі списку і проблему буде вирішено в найбільш зручному вигляді:

Швидкі виправлення в середовищі ReSharper

Рефакторинг

[ред. | ред. код]

Набір функцій ReSharper для рефакторингу значно перевищує за кількістю та зручністю використання вбудовані засоби середовища Visual Studio. У програмі забезпечено можливість відповідного покращення коду в мові C #, переважна більшість рефакторингів також доступні в VB.NET, деякі в JavaScript, XAML та інших підтримуваних мовах. Для здійснення рефакторингу необхідно лише навести курсор на відповідний блок коду. Деякі з підтримуваних рефакторингів наведено далі:

Зміна сигнатури методу
[ред. | ред. код]

Цей рефакторинг дозволяє змінити сигнатуру методу у такі способи:

  • Додавання, видалення, перейменування або зміна порядку параметрів;
  • Зміна типу результату, що повертається;
  • Зміна типів параметрів;
  • Перейменування методу.

Після зміни сигнатури методу, ReSharper оновлює всі його виклики, реалізації та перевизначення, підтримуючи працездатність коду.

Перетворення інтерфейсу до абстрактного класу і навпаки
[ред. | ред. код]

За допомогою даного рефакторингу всі відповідні перетворення будуть зроблені. Перед його пристосуванням автоматично виконується перевірка на наявність конфліктів. Наприклад, перед застосуванням рефакторингу "Перетворити інтерфейс для абстрактного класу" маємо:

Після його пристосування, відповідно, маємо:

Перетворення непорожнього методу до властивості і навпаки
[ред. | ред. код]

Існує можливість перетворення властивості до пари методів за допомогою програми ReSharper. Наприклад, маємо:

Виділення класу, суперкласу та інтерфейсу
[ред. | ред. код]

За допомогою виділення класу можна розкласти складний клас на окремі, простіші структури. ReSharper допоможе Вам вибрати методи і поля, щоб перейти від старого до нового класу. Він також буде попереджати про будь-які порушення залежностей і проблеми доступності, запропонує варіанти розв'язання конфлікту.

За допомогою рефакторингу виділення суперкласу можна створити базовий клас для наявних у програмі класів. Для цього слід лише помістити курсор на оголошення класу, обрати члени для виділення і запустити рефакторинг. Особливо корисним може бути його використання при переміщенні деякої спільної логіки для окремих класів.

Автоматична генерація програмного коду

[ред. | ред. код]

В ReSharper існує можливість використання методу, властивості, поля змінної або навіть класу, перш ніж відповідні елементи будуть оголошені в програмному коді. ReSharper спритно запропонує виправити та доповнити створені автоматично блоки для таких структурних елементів. Наприклад, при автоматичному створенні методу з використанням ReSharper, необхідно додатково визначити тип результату що повертається, а також типи його параметрів.

Недоліки ReSharper

[ред. | ред. код]
  • Повільна робота та більш тривале завантаження середовища Visual Studio після встановлення програми;

Слід зазначити, що за замовченням ReSharper визначає правило іменування приватних змінних за зразком "_х" з використанням символу підкреслення, що в мові C# не рекомендується. Для коректного налаштування середовища ReSharper слід обрати вкладку "Options":

Далі відкриваємо вузол Code Editing/C#/C# Naming Style. Обираємо необхідне правило іменування і вилучаємо символ підкреслювання в полі "Name Prefix":

Зміна правила іменування приватних змінних в середовищі Resharper

Подібні програми

[ред. | ред. код]

BugAid for Visual Studio

[ред. | ред. код]

За допомогою цього плагіна можливе істотне полегшення процесу відладки в мові C#. Надає можливості пошуку комплесних об'єктів, візуалізації комплексних виразів тощо.

Visual Assist X

[ред. | ред. код]

Visual Assist X — плагін для Microsoft Visual Studio, розроблений Whole Tomato. В основному даний плагін доповнює роботу IntelliSense та підсвітку синтаксису коду.

CodeRush здійснює статичний аналіз коду (миттєве виявлення помилок без потреби компіляції), підтримує додаткові можливості виявлення та корекції помилок, автозавершення коду, навігацію, пошук, підсвітку синтаксису, форматування, створення та оптимізацію коду, виконує більше 180 автоматичних покращень, спрощене модульне тестування за допомогою NUnit, XUnit, MbUnit та MSTest, а також інші функції.

Refactor! Pro for Visual Studio

[ред. | ред. код]

Поширена система автоматизації та спрощення рефакторингу.

Література

[ред. | ред. код]
_1-0">↑ Other Versions