Привет, это снова Без слайдов. Я Алексей Федоров, и на этот раз в гостях у меня побывал Сергей Шкредов, руководитель всего .NET-направления в компании JetBrains.
С Сергеем мы говорили:
о последних релизах ReSharer;
о новой схеме подписок и лицензий;
про непростые отношения с Microsoft;
о рантайме и развитии языка;
о том, как поменял ситуацию выход Roslyn;
о работе с фидбеком пользователей для улучшения продукта;
о планах развития других продуктов .NET стека;
о важности внутриотраслевого общения и обмена опытом;
про разработку продуктов для С++;
немного о ReSharper C++, на который должны подсесть даже разработчики Microsoft;
Финализатор (при правильной реализации IDisposable pattern) должен (should) вызывать Dispose(false). Этот факт можно тестировать статическим анализом. Соответственно, если Dispose(false) вызывает удаление файла (вы же написали тест?), то можно быть уверенным, что и финализатор тоже вызовет удаление файла, unit-тест излишен.
Мне эта идея показалась очень здравой, кроме того, иногда хочется контролировать исходный код более кастомно, чем дает встроенный анализ кода или решарпер.
Опыт реализации кастомных правил анализа кода под катом + «как ozcode помог в процессе исследования внешней библиотеки»
Только недавно мы выпустили ReSharper 7.1, но уже пора поздравить плагинописателей, которые сумели подготовить свои плагины для новой версии. Большинство выпущенных плагинов являются OSS-проектами, над которыми авторы работают в свободное время, так что нам бы хотелось поблагодарить их за поддержку нашей экосистемы. Вот небольшой обзор плагинов, которые уже готовы для работы с R# 7.1.