ReSharper vs Visual Studio

ReSharper 에서 제공되지만 Visual Studio 에는 없거나 완전히 구현되지 않은 기능 중 일부가 이 문서에 포함되어 있습니다.

두 제품 모두 활발히 개발 중이고, 제공되는 기능이 정기적으로 변하므로 이 비교는 비교 표의 제목에 표시된 특정 릴리스에 대해 유효한 것으로 간주합니다.

Microsoft Visual Studio 2022 17.12

ReSharper 2024.3

코드 분석
C#, VB.NET, XAML에 사용 가능한 즉석 design-time 코드 분석 기능
지원되는 모든 언어(ASP.NET, XAML 등)에 사용 가능한 즉석 design-time 코드 분석 기능
800여 개의 코드 분석 규칙(코드 검사)
1600여 개의 코드 분석 규칙(코드 검사)
design-time 오류 강조 표시: C#, VB.NET, JavaScript, TypeScript, C++의 컴파일러 오류
design-time 오류 강조 표시: 지원되는 모든 언어에 대해 대부분의 컴파일러 오류, 가능한 다양한 런타임 오류(가능한 null 참조 예외 탐지 등)를 표시
자동으로 수정되는 400여 가지의 코드 문제
자동으로 수정되는 2100여 가지의 코드 문제
C#, F# 및 VB.NET의 코드 문제를 해결할 수 있는 250여 개의 빠른 액션
C#, VB.NET, ASP.NET, XAML, XML, JavaScript, TypeScript 및 기타 지원되는 언어의 코드 문제를 해결할 수 있는 1500여 개의 빠른 수정
문서, 프로젝트, 솔루션, 포함 멤버 및 포함 타입에서 모두 수정
문서, 프로젝트, 폴더, 솔루션의 범위에서 수정
C# 및 VB.NET에 사용 가능한 전체 솔루션 분석 기능
지원되는 모든 언어에 사용 가능한 솔루션 전체 오류/경고 모니터링
수신 호출
통합된 ESLint 지원
하나의 파일 내 모든 오류 및 코드 품질 문제 보고
모든 범위(최대 전체 솔루션의 범위)에서 모든 오류 및 코드 품질 문제 보고
코드 어노테이션으로 null 값 가능성 분석
코드 어노테이션으로 솔루션을 더 정확하게 분석(null 값 가능성, 컨트랙트 등)
설치된 NuGet 패키지에서 타입의 사용을 제안
구조 검색 및 패턴 바꾸기 기능을 이용한 사용자 지정 코드 검사 및 수정
문자열 리터럴 내 코드 분석
값의 소스 추적
값의 출처 및 대상을 분석하기 위한 값 추적
리팩터링
솔루션 전체에 적용되는 15개 리팩터링
솔루션 전체에 적용되는 60개 이상의 리팩터링
120여 개의 로컬 리팩터링(자동 로컬 코드 변환)
500여 개컨텍스트 액션(자동 로컬 코드 변환)
로컬 리팩터링 미리보기
프로젝트 수준의 정리 리팩터링: 네임스페이스 동기화
동일하거나 유사한 코드에 사용할 수 있는 구조 바꾸기
코드 생성
사용 위치에서 생성
사용 위치에서 생성
코드 스니펫(템플릿)에서 코드 생성
구성 가능한 라이브, 감싸기, 소스, 접미사 템플릿에서 코드 생성
템플릿에서 파일 생성
구성 가능한 템플릿에서 파일 및 파일 모음 생성
타입 멤버 생성
매개변수에 대해 null 검사 생성
코드 조각(템플릿)용 시각적 에디터
빌드 도구
MSBuild
ReSharper Build: 업데이트가 필요한 프로젝트만 빌드하기 위해 경험적 지식을 적용하고 MSBuild를 최적화하는 out-of-process 증분 빌드 도구와 함께 기본 제공 NuGet 패키지 복원 프로그램 제공
프로젝트 수준 도구
다중 프로젝트 실행 구성
여러 개의 스타트업 프로젝트, 정적 메서드, 외부 실행 파일을 위한 실행 구성
종속성 그래프 Enterprise
Visual Studio Enterprise Edition이 필요 없으며 아무것도 컴파일하지 않아도 표시되는 프로젝트 종속 요소 다이어그램, 어셈블리 종속 요소 다이어그램, 타입 종속 요소 다이어그램
컴파일된 어셈블리를 열고 탐색할 수 있는 어셈블리 탐색기
NuGet 갤러리에서 패키지, 타입, 네임스페이스를 탐색할 수 있는 NuGet 브라우저
코딩 지원
코드 완성
코드 완성이 컨텍스트 중심이며, 전체 솔루션에서 타입 및 확장 메서드를 제안하고 네임스페이스를 가져오며 코드를 생성하는 등의 기능을 수행
구문 강조 표시
구문 강조 표시(더 많은 식별자 종류에 적용할 수 있는 다양한 구성 가능한 색상)
네임스페이스 자동 가져오기
타입 및 네임스페이스에 대한 NuGet 검색으로 네임스페이스 자동 가져오기
줄 또는 선택 범위를 위/아래로 이동
코드 선택 확장/축소
정규식 지원
클립보드 기록의 항목 붙여넣기
매개변수 이름 및 타입 이름에 대한 인레이 힌트
매개변수 이름, 타입 이름, 타입 변환에 대한 인레이 힌트, push-to-hint 모드
철자 검사 통합
탐색 및 검색
코드 검색
전체 검색
선언으로 이동
선언으로 이동을 통해 사용 위치 간 이동도 가능
참조 검색
텍스트의 찾은 위치를 포함해 현재 및 관련 심볼의 사용 위치 찾기
참조 강조 표시
참조 강조 표시
심볼로 이동
심볼로 이동
유형으로 이동
유형으로 이동
파일 멤버로 이동
파일 멤버로 이동
파일로 이동
파일로 이동
코드 북마크
코드 북마크
디컴파일된 소스로 이동
디컴파일된 코드로 이동
최근 파일 보기
최근 파일/최근 편집된 항목을 보고, 마지막 편집된 항목으로 이동
빠른 시작
액션으로 이동
베이스로 이동
구현되고 상속된 심볼을 나타내는 여백 아이콘
구현 및 상속되고 숨겨진 심볼을 나타내는 여백 아이콘
문서 개요
파일의 global using 보기
global using 보기 및 리팩터링
Go to Text (텍스트로 이동)
관련 있는 근처 파일로 이동
프로젝트, 프로젝트 참조, 타입, CSS 스타일을 계층 구조 뷰로 표시
Task List window
코드 스타일
코드 서식 재지정
파일, 프로젝트 또는 솔루션에서 코드 서식 다시 지정(선택적으로 서식 지정 규칙의 컨텍스트 구성 사용)
네임스페이스 import 지시문 최적화
일괄 import 문을 포함하여 네임스페이스 import 지시문 최적화
구성 가능한 코드 구문 스타일 검사
이름 지정 스타일
EditorConfig 지원
현재 파일에 영향을 미치는 모든 .editorconfig 파일을 탐색할 수 있는 File Formatting Info(파일 서식 지정 정보) 창으로 EditorConfig 지원
파일, 프로젝트 또는 솔루션(C#)에서 코드 정리
파일, 폴더, 프로젝트, 솔루션의 모든 범위(C#, VB.NET, C++, JavaScript, TypeScript, HTML 및 기타 언어)에서 코드 정리
파일 내 사용 중이거나 사용되지 않는 불필요한 private 멤버 제거
메서드, 클래스, 파일, 프로젝트 또는 전체 솔루션에서 불필요한 코드 제거
EditorConfig를 통한 파일 헤더 스타일
EditorConfig 또는 설정을 통한 파일 헤더 스타일
유닛 테스트
유닛 테스트 탐색기
테스트 프레임워크 지원(MSTest, VSTest, xUnit.net)
테스트 프레임워크 지원(MSTest, VSTest, xUnit.net, NUnit)
에디터에서 테스트 실행(MSTest 및 xUnit.net 한정)
에디터에서 테스트 실행
에디터에서 테스트 상태 보기(MSTest 및 xUnit.net 한정)
에디터에서 테스트 상태 보기
코드 커버리지 도구 Enterprise
실시간 유닛 테스트 Enterprise
연속 테스트 dotUltimate
여러 개의 유닛 테스트 세션을 동시에 독립적으로 실행 가능
디버거
에디터 상의 DataTips
그룹화 및 내보내기 기능이 있는 중단점 창
미리보기, 컨텍스트 검색, 그룹화, 내보내기 기능이 있는 중단점 창
메서드 반환 값이 에디터에 표시됨
지역 변수의 값, 현재 줄의 표현식, 함수 반환이 에디터에 표시됨
설정 관리
Microsoft ID를 통한 설정 동기화
VCS 또는 다른 파일 호스팅 서비스를 통해 팀과 설정 동기화
서로 다른 솔루션의 다양한 설정을 충돌 없이 저장할 수 있는 설정 레이어 시스템
보안
취약점이 있는 패키지 감지
기타
진단 도구
진단 도구 + 통합 성능메모리 프로파일러 dotUltimate
UI 현지화
UI 현지화
30일 무료 평가판