VA가 더 빠른 이유: C++로 작성되었기 때문입니다.
ReSharper는 C#으로 네이티브 작성되었습니다. C++ 소스 코드를 분석하기 위해 변환 계층을 사용하는데, 이로 인해 처리 오버헤드가 발생하고 C++ 개발자가 매일 사용하는 코드(매크로, 템플릿, 부분 빌드, 깔끔하게 컴파일되지 않는 레거시 코드베이스 등)와 마찰이 생깁니다.
Visual Assist는 C++로 네이티브 작성되었습니다. 변환 단계가 없습니다. 파서는 소스 코드를 작성된 동일한 언어로 처리하므로 인덱싱 속도가 빠르고 매크로가 많은 코드에서 정확도가 높으며 IDE 시작 및 RAM 사용량에 미치는 영향이 최소화됩니다. 또한 VA는 코드가 제대로 작동하지 않는 경우에도 작동합니다. 부분 빌드, 손상된 코드, 편집 중인 상태에서도 ReSharper의 분석 엔진처럼 기능이 비활성화되지 않습니다.
규모가 커질수록 차이가 커집니다. Unreal Engine Lyra 샘플 프로젝트에서 테스트한 결과, VA는 모든 TOptional 참조를 9분 이내에 찾았습니다.
ReSharper는 30분 만에 동일한 참조의 3분의 1을 찾아냈습니다. VA의 병렬 파서는 분석이 실행되는 동안 IDE의 응답성을 유지하여 ReSharper 사용자들이 인덱스 처리 중에 보고했던 멈춤이나 응답 없음 현상을 방지합니다.
Visual Assist는 저희가 만드는 유일한 제품입니다. ReSharper는 JetBrains의 거대한 생태계의 일부입니다. 이러한 집중은 VA가 C++ 문제점을 얼마나 빠르게 해결하는지, Visual Studio와 얼마나 긴밀하게 통합되는지, 그리고 기능 세트 중 얼마나 많은 부분이 실제로 C++ 작업에 관련성이 있는지에서 드러납니다.