

PVS-Studio v7.34.87804.1491
تحلیل و شناسایی خطاهای برنامهنویسی
شناسایی یک خطا در برنامهنویسی میتواند ساعتها زمان ببرد. به خصوص اگر اینکه با یک خطای منطقی روبرو باشید. در این صورت این خطا ممکن است برنامهنویس را حسابی کلافه کند. البته خطاهای برنامهنویسی میتوانند پس از انتشار برنامهها نیز ظهور کنند. اما در حالت ایدهآل بهتر است خطاهای برنامه را حتی قبل از ورود به سیستم کنترل نسخه شناسایی و برطرف کرد. البته انجام این کار بدون استفاده از یک ابزار تجزیه و تحلیل ماشینی کد، به خصوص در برنامههای بزرگ کاری بسیار سخت و تقریبا غیر ممکن است.
نرم افزار PVS-Studio
PVS-Studio ابزاری برای شناسایی اشکالات و ضعفهای امنیتی موجود در کدهای منبع برنامههای نوشته شده به زبان C, C++, C#, Java است. این برنامه ابزارهای ویژهای برای مدون کردن اطلاعات و بررسی آنها فراهم میکند و راهی جامع برای انجام سریع عملیات تحلیل پروژه، بدون در نظر گرفتن سیستم ساخت آن ارائه میدهد.
تحلیل بر مبنای مدل معنایی
نرم افزار PVS-Studio با آنالیز کد استاتیک در شرایط واقعی استفاده از برنامه و تولید گزارشهای جامع به برنامهنویسان کمک میکند تا اشکالات برنامههای خود را پیدا و رفع کنند. این نرم افزار با استفاده از روند تحلیلی مدل معنایی به تحلیلگر اجازه میدهد تا اطلاعات کاملی در مورد کلیه متغیرها و عبارات موجود در کد داشته باشد. به این ترتیب با تجزیه و تحلیل جریان داده، امکان ارزیابی محدودیتهایی که هنگام پردازش ساختارهای مختلف زبان به متغیرها تحمیل میشوند (به عنوان مثال مقادیری که یک متغیر میتواند در صورت قرارگیری در شرط else یا یک حلقه شرطی بگیرد) را به برنامهنویس میدهد. علاوه بر آن در یافتن اشتباهات چاپی و املایی و خطاهای Copy-Paste نظیر خطاهای V501, V517, V522, V523, V3001 نیز میتواند مفید واقع شود.
برخی از ویژگیهای نرم افزار PVS-Studio عبارتند از:
- تحلیل و شناسایی خطاهای برنامهنویسی زبانهای C, C++, C#, Java
- تجزیه و تحلیل مبتنی بر الگو بر اساس الگوی درختی سینتکسهای انتزاعی
- دارای ویژگی Compiler Monitoring برای بررسی کدها در محیطهای توسعه خاص
- پشتیبانی از طیف گستردهای از فرآیندهای بررسی کد با مقیاسپذیری کامل
- امکان علامتگذاری کدهای صحیح برای جلوگیری از اسکن مجدد آنها
- ایجاد گزارشهای آماری از آنالیزهای انجام شده در قالب فایلهای اکسل
- استفاده از روش SAST برای شناسایی نقصهای امنیتی برنامه
- امکان فیلتر کردن نتایج تجزیه و تحلیل به صورت تعاملی
- ذخیره و بارگیری نتایج تجزیه و تحلیل در پروژههای بزرگ
- امکان تجزیه و تحلیل خودکار پروندههای اصلاح شده
- قابلیت ذخیره نتایح بررسی در قالب فایلهای HTML
- امکان حاشیهنویسی کدها و روشهای تحلیل آنها
- قابلیت ادغام با هر محیط کدنویسی به صورت دستی
- امکان ارسال ایمیل به توسعهدهندگان در مورد خطاهای موجود
- قابلیت ذخیره و لود مجدد نتایج آنالیز برای جلوگیری از دوباره کاری
- پشتیبانی کامل از خط فرمان برای انجام آنالیزهای دستهای
- پشتیبانی از سیستمهای چند هستهای و آنالیز توزیع شده
- ادغام با نرم افزار ویژوال استودیو به صورت کامل (۲۰۱۰-۲۰۱۹)
- دارای راهنمای جامع شامل بیش از ۷۰۰ صفحه مستندات
- تحلیل سورس کدهای پلتفرمهای ۳۲ و ۶۴ بیتی
- قابلیت ادغام با پلتفرم SonarQube
- و …
زبانها و کامپایلرهای قابل پشتیبانی:
Windows. Visual Studio, C, C++, C++/CLI, C++/CX (WinRT)
Windows. IAR Embedded Workbench, C/C++ Compiler for ARM C, C++
Windows. QNX Momentics, QCC C, C++
Windows/Linux. Keil µVision, DS-MDK, ARM Compiler 5/6 C, C++
Windows/Linux. Texas Instruments Code Composer Studio, ARM Code Generation Tools C, C++
Windows/Linux/macOS. GNU Arm Embedded Toolchain, Arm Embedded GCC compiler, C, C++
Windows/Linux/macOS. Qt Creator, Eclipse, GCC, Clang, C, C++
Windows. MinGW C, C++
Windows/Linux/macOS. IntelliJ IDEA, Android Studio, Java
Windows/Linux/macOS. Visual Studio, JetBrains Rider, C#, .NET Framework, .NET Core