Зачем нужен ReSharper?
От: ukrspecs  
Дата: 29.01.20 17:36
Оценка: +9 -2
Догадываюсь, что вопрос затерли до дыр, аж профильный форум создали. Но вопрос (для меня) остается открытым.
У меня было несколько таких кейсов:
— Устраиваюсь в солидную контору на высокий рейт. Интервью. После задачки на перекладывание из массива в массив, летит вопрос "Do you use ReSharper?", с повелительной интонацией. Я замялся, сказал что стоит в студии (что отключен всегда — не стал говорить). Затем работая в этой конторе, в документациях типа "как развернуть у себя среду для тестирования" — первым пунктом идет — "Установите ReSharper". Не устанавливал. Все развернул, недоумеваю.
— Кейс #2. Взяли лидом в команду из 25 человек. И дня не прошло, чтобы кто-нибудь из них не заныл — "Я без решарпера, как без рук! Купить мне лицензию наконец...ААА!". Недоумеваю. Спрашивать причины воя не стал, дабы сохранить дружный коллектив.
— Еще несколько случаев, в том числе в публичных интервью и блог-постах уважаемых людей пишут, что ReSharper — must have, а без него — студия — это текстовый редактор. Так то.

У меня вопрос. Я сижу в студии с версии 6.0, года так с 2001-го. Ставил все версии. Сейчас на 2019. У меня в голове не укладывается, что там можно сделать такого, чего сама студия не может??
Я ставил, смотрел: сразу появилась куча всякой дополнительной мишуры в редакторе, время загрузки студии увеличилось, в целом тормоза. Привычные Хоткеи перебиваются и начинается какая-то вакханалия вместо стандартных окон.

Захожу в Tools->Extensions, нажимаю Disable, чисто на случай если всплывет какая-то киллер фича, которая в разы ускорит разработку и этого не будет в самой VS.

Чего я не понимаю в мире разработки на C#?
Re: Зачем нужен ReSharper?
От: Слава  
Дата: 29.01.20 17:43
Оценка: +7 -1 :))
Здравствуйте, ukrspecs, Вы писали:

U>Чего я не понимаю в мире разработки на C#?


Вы наверное сразу всё делаете правильно, а потом не переделываете никогда. И всё помните. Вам ни Find Usages не нужен, ни переразбивка проекта на части и неймспейсы, ни создание интерфейса для какого-нибудь класса на 50 методов (фасада к куче других сервисов, а интерфейс нужен для создания кэширующей прослойки).
Re: Зачем нужен ReSharper?
От: Sharov Россия  
Дата: 29.01.20 18:01
Оценка:
Здравствуйте, ukrspecs, Вы писали:

U>Чего я не понимаю в мире разработки на C#?


Я без R#, как без рук -- у меня там свои биндинги
Автор: Sharov
Дата: 05.07.12
, под себя, без которых мне крайне крайне не привычно\уютно.
Кодом людям нужно помогать!
Re[2]: Зачем нужен ReSharper?
От: vorona  
Дата: 29.01.20 20:43
Оценка: +1
Здравствуйте, Слава, Вы писали:

Это все есть в студии
Re[3]: Зачем нужен ReSharper?
От: sergeya Ниоткуда http://blogtani.ru
Дата: 29.01.20 21:09
Оценка: 1 (1) +1
Здравствуйте, vorona, Вы писали:

V>Это все есть в студии


Согласен. Часто решарпер хвалят за умелый Find Usages, но в студии в большинстве случаях мне хватает Find All References/Go To Implementation.
Эта парочка пасует только в случае, если надо провалиться в метод, реализованный в неизвестном производном классе:

func(IBaseObject obj)
{
    // Вот здесь не получается дает провалиться в реализацию ToString(), потому что студия не может определить, 
    // экземпляр какого именно конкретного класса был передан в метод
    obj.ToString(); 
}

По этой причине особенно тяжело разбираться в проектах, где широко используются IoC контейнеры.
Но там и решарпер не поможет.
Мобильная версия сайта RSDN — http://rsdn.org/forum/rsdn/6938747
Автор: sergeya
Дата: 19.10.17
Re: Зачем нужен ReSharper?
От: Kolesiki  
Дата: 30.01.20 06:53
Оценка: 2 (1) +3
Здравствуйте, ukrspecs, Вы писали:

U>Но вопрос (для меня) остается открытым.


Брат, ты не один! Решарпер действительно БЫЛ когда-то полезным дополнением (напр, к студии 2005), потому что саму студию писали посредственности. Но сейчас, за годы улучшений, Студия получила кучу плюшек и теперь Решарпер в ней как пятое колесо — ничего, кроме тормозов не привносит.
Так что да, всех "решарпистов" можешь посылать прямиком в ЖетБрынзу: "Ребят, любой каприз за ваши деньги!". Сами купят, сами помучаются, сами понесут обратно.
Re[2]: Зачем нужен ReSharper?
От: Privalov  
Дата: 30.01.20 07:24
Оценка:
Здравствуйте, Kolesiki, Вы писали:

K>Брат, ты не один! Решарпер действительно БЫЛ когда-то полезным дополнением (напр, к студии 2005), потому что саму студию писали посредственности. Но сейчас, за годы улучшений, Студия получила кучу плюшек и теперь Решарпер в ней как пятое колесо — ничего, кроме тормозов не привносит.


Без Решарпера в студии 2019 можно обойтись. По крайней мере, на небольших проектах. Но вот касательно улучшений... Я как-то жаловался на неработающий XML Schema Explorer. По сообщениям, его обещали починить в версии 16.4. У меня сейчас 16.4.3, а он как не работал, так и не работает. Точнее, я однажды сделал студии repair, после чего мне удалось его запустить. Но после того, как я закрыл студию, а потом снова открыл, он снова объявил забастовку. Мне теперь что, каждый раз перед открытием схемы repair делать?
Толку с тех плющек, если они работают через нее (если вообще работают).
Отредактировано 30.01.2020 7:41 Privalov . Предыдущая версия .
Re: Зачем нужен ReSharper?
От: Лось Чтостряслось СССР  
Дата: 30.01.20 09:18
Оценка:
Здравствуйте, ukrspecs, Вы писали:

давно я его в руки не брал (как и студию, впрочем)
может просто современная студия умеет всё из коробки? лет 10 назад емнип решарпер был незаменим
социализм или варварство
Re[2]: Зачем нужен ReSharper?
От: Sharov Россия  
Дата: 30.01.20 09:27
Оценка:
Здравствуйте, Лось Чтостряслось, Вы писали:

ЛЧ>давно я его в руки не брал (как и студию, впрочем)


Проджет менеджер али другой стек?

ЛЧ>может просто современная студия умеет всё из коробки? лет 10 назад емнип решарпер был незаменим


Поэтому к нему уже привык и без него как-то не так.
Кодом людям нужно помогать!
Re[3]: Зачем нужен ReSharper?
От: Лось Чтостряслось СССР  
Дата: 30.01.20 09:49
Оценка: 1 (1)
Здравствуйте, Sharov, Вы писали:

ЛЧ>>давно я его в руки не брал (как и студию, впрочем)

S>Проджет менеджер али другой стек?
xcode
социализм или варварство
Re: Зачем нужен ReSharper?
От: Vladek Россия Github
Дата: 30.01.20 10:47
Оценка: +1 -2 :))) :)
Здравствуйте, ukrspecs, Вы писали:

U>Чего я не понимаю в мире разработки на C#?


Он нужен этим супер-продуктивным чувакам, вываливающим горы кода каждый день, у которых каждый метод вызывает другой метод, который вызывает другой метод и так далее, три страницы установки значений свойствам в каждом классе и прочие непотребности, которые руками лабать утомительно.

Студия одинаково тормозит на таком коде что с Решарпером, что без Решарпера, поэтому тормозов Решарпера они не замечают.
Re: Зачем нужен ReSharper?
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 30.01.20 11:31
Оценка:
Здравствуйте, ukrspecs, Вы писали:

U>Чего я не понимаю в мире разработки на C#?


Кстати, для С++ также. Я выиграл лицензию на конференции, поставил себе и дальше всё как у тебя: всё мигает, мограет, пёстро, хоткеи не работают, тормоза, IDE почему-то перестало видеть инклуды к ffmpeg (компилятор видит). Немножко помучался, удалил и всё. Проект кроссплатформенный под Windows я работаю в MS VS, под Линуксом в QtCreator, все проекты на CMake. Вернулся к привычным инструментам.
Re: Зачем нужен ReSharper?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 30.01.20 12:30
Оценка: 1 (1) +3
Здравствуйте, ukrspecs, Вы писали:

U>Чего я не понимаю в мире разработки на C#?


Решарпер интересен не синтаксисом, интеллисенсом, навигацией или тестовой средой. Это все второстепенное.

Основное — в нем очень продвинутый рефакторинг. Настолько крутой, что можно писать код не в терминах "строчка, еще строчка", а работать в терминах парадигмы.
Это позволяет модифицировать и окультуривать ненужный, лишний, устаревший, неоптимальный код сохраняя сильные гарантии работоспособности.
Например, есть запутаный метод килобайт около 500, понятный одному автору на момент написания, да и то, автор уволился. Разрабы вплоть до сеньора боятся туда лезть, ни тестов, ни документации, ничего.
Как быть?
Вот представь кейс, когда внутренности этого метода надо отдать наружу в виде внятного АПИ. Решарпер позволяет решать такие задачи намного эффективнее, нежели переписывать с нуля.
Например, возможный подход — конвертируем метод в класс, режем на кусочки, двигая по иерархии, перемещаем методы между классами, выделяем интерфейсы, унифицируем, вытесняем лишнее в экстеншны, вводим чтото навроде дсл и все это в принципе без набора какого либо существенного количества кода руками.
Еще и тесты появятся сами собый, как побочный эффект.

Особо умные конечно намекают: "А зачем такое было писать?" Странно, но когда этот код кем то создавался и протухал, прокисал годами, такие вопросы не интересовали Почему ?
Re[2]: Зачем нужен ReSharper?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 30.01.20 12:35
Оценка: +1
Здравствуйте, Vladek, Вы писали:

V>Он нужен этим супер-продуктивным чувакам, вываливающим горы кода каждый день, у которых каждый метод вызывает другой метод, который вызывает другой метод и так далее, три страницы установки значений свойствам в каждом классе и прочие непотребности, которые руками лабать утомительно.


Уже давно проверено, что эти супер-продуктивные чуваки вываливают почти столько же в обычном текстовом редакторе. Просто врайт-онли код пишется крайне быстро.
Нет никакой проблемы ускорить написание в десятки раз в ущерб сопровождению.

Любой код имеет цикл жизни — пишем, осмысливаем, адаптируем новые требования, фиксим баги и так много раз по кругу пока сохраняется экономическая целесообразность.
Рефакторинг нужен для того, что бы управлять этим циклом жизни кода. В противном случае всё будет в ущерб майнтенансу — трудозатраты все больше и больше, пока это не перестаёт быть экономически эффективным. При чем эффект нарастает лавиной. Пока есть деньги — можно компенсировать разрабами. Но это не на долго. А вот переписывание с нуля обычно даёт жосцкий фейл,или, в лучшем случае, те же проблемы, но в профиль.
Отредактировано 30.01.2020 12:41 Pauel . Предыдущая версия .
Re[2]: Зачем нужен ReSharper?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 30.01.20 12:38
Оценка: +1
Здравствуйте, Слава, Вы писали:

U>>Чего я не понимаю в мире разработки на C#?


С>Вы наверное сразу всё делаете правильно, а потом не переделываете никогда. И всё помните. Вам ни Find Usages не нужен, ни переразбивка проекта на части и неймспейсы, ни создание интерфейса для какого-нибудь класса на 50 методов (фасада к куче других сервисов, а интерфейс нужен для создания кэширующей прослойки).


Скорее товарищ имеет дело только со свежим кодом и в основном своим или своей команды.
Re[2]: Зачем нужен ReSharper?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 30.01.20 12:39
Оценка: +1 -1
Здравствуйте, Kolesiki, Вы писали:

U>>Но вопрос (для меня) остается открытым.


K>Брат, ты не один! Решарпер действительно БЫЛ когда-то полезным дополнением (напр, к студии 2005), потому что саму студию писали посредственности. Но сейчас, за годы улучшений, Студия получила кучу плюшек и теперь Решарпер в ней как пятое колесо — ничего, кроме тормозов не привносит.


Узнаю разработчика-одиночку c идеальной памятью, который реализует закат солнца вручную
Re[2]: Зачем нужен ReSharper?
От: sergeya Ниоткуда http://blogtani.ru
Дата: 30.01.20 14:40
Оценка: +2
Здравствуйте, Ikemefula, Вы писали:

I>Решарпер интересен не синтаксисом, интеллисенсом, навигацией или тестовой средой. Это все второстепенное.

I>Основное — в нем очень продвинутый рефакторинг.

Можешь написать из своего опыта, каких именно рефакторингов не хватает в студии?
Мобильная версия сайта RSDN — http://rsdn.org/forum/rsdn/6938747
Автор: sergeya
Дата: 19.10.17
Re: Зачем нужен ReSharper?
От: Мирный герцог Ниоткуда  
Дата: 30.01.20 15:09
Оценка: :))) :)
Здравствуйте, ukrspecs, Вы писали:

U>Чего я не понимаю в мире разработки на C#?


пацаны просто не осилили греп и регекспы *trollface.ico*
нормально делай — нормально будет
Re[4]: Зачем нужен ReSharper?
От: koandrew Канада http://thingselectronic.blogspot.ca/
Дата: 30.01.20 15:16
Оценка: :)
Здравствуйте, Лось Чтостряслось, Вы писали:

ЛЧ>xcode

х....й код? Вот это coming out
[КУ] оккупировала армия.
Re[2]: Зачем нужен ReSharper?
От: ukrspecs  
Дата: 30.01.20 19:32
Оценка: +3 -5
Здравствуйте, Ikemefula, Вы писали:

I>Здравствуйте, ukrspecs, Вы писали:


U>>Чего я не понимаю в мире разработки на C#?



I>Особо умные конечно намекают: "А зачем такое было писать?" Странно, но когда этот код кем то создавался и протухал, прокисал годами, такие вопросы не интересовали Почему ?


Это какой-то абстрактный кейс, который в любом случае должен звучать иначе "лошадь двигает телегу, а не наоборот". Т.е. в любом случае, разбивать, вычленять и рефакторить нужно своей головой. То что вместо Ctrl+X — Ctrl+V и еще пары хоткеев, я кликну правой кнопкой мыши и мне вывалится новый класс и методы...ну оно того не стоит.

В общем нет сегодня весомых аргументов в пользу Решарпера. А те кто на него давно подсел, уже по инерции вырубают хоткеи студии и даже не смотрят что в ней нового.
На реальном проекте, это превращается в дикую попоболь, когда менеджеры зажимают бюджет на недешевую лицензию решарпера.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.