Скрытые Трюки для Повышения Продуктивности в ReSharper и Rider. Окончание
Начало
4. Шаблоны автозавершения
Вам могут быть знакомы сниппеты в Visual Studio. В ReSharper есть аналогичная функция, которая позволяет вставлять выражение в шаблон после того, как вы его уже набрали. Например:
Enumerable.Range(0, 100).foreЕсли нажать
Enter или Tab, ReSharper автоматически создает оператор foreach:foreach(var i in Enumerable.Range(0, 100))Этот приём можно использовать для любой коллекции.
{
}
Вот ещё пример:
count > 100.ifВыбор шаблона
if создаст следующий блок:if(count > 100)Шаблонов много, можете посмотреть полный список здесь.
{
}
5. Комплексный анализ решения
ReSharper постоянно анализирует всё ваше решение и находит ошибки и предупреждения. Как ошибки компиляции, так и ошибки времени выполнения. Это можно использовать как своего рода проверку работоспособности. Всякий раз, когда вы выполняете рефакторинг большого количества кода, эта функция действительно полезна, чтобы убедиться, что вы не делаете ошибок. Понятно, что находятся очевидные ошибки. ReSharper пока не может найти логические ошибки вместо разработчика.
Комплексный анализ решения отключен по умолчанию по уважительным причинам. Он съедает производительность. По крайней мере, при использовании Visual Studio + ReSharper. С другой стороны, если вы используете Rider, вы, вероятно, даже не заметите, что он включен.
6. Извлечение класса
Одна из самых впечатляющих особенностей ReSharper - это его возможности рефакторинга. К большинству из них можно получить доступ из меню Refactor This, доступного с помощью сочетания клавиш
Ctrl+Shift+R. Наиболее впечатляющий вид – извлечение класса (Extract Class). Он извлечёт поля, свойства и методы, в новый класс, который будет добавлен в исходный класс как поле. При нажатии Ctrl+Shift+R на одном из членов исходного класса появляется диалоговое окно, где вы можете выбрать члены, которые нужно извлечь в новый класс, назвать новый класс и поле исходного класса, в которое он будет внедрён, а также выбрать, будет ли класс создан в том же файле или в отдельном.Это значительно упрощает обычное действие по разбиению большого класса на более мелкие.
Источник: https://michaelscodingspot.com/productivity-in-resharper-and-rider/