اگر نرم افزاری را توسعه می دهید، می دانید که تجزیه و تحلیل کد ایستا سال هاست که روند رواج داشته است. امروزه نکات و هشدارهایی از سوی کامپایلرها و IDE ها، لینترها و در نهایت راه حل های تخصصی غنی از ویژگی هایی مانند ESLint، SonarQube، یا چکمارکس. آنها به شما کمک می کنند تا کد صحیح بنویسید، از سر خوردن باگ ها جلوگیری کنید و امنیت برنامه را سخت تر کنید. آیا این برای اطمینان از مدرن بودن، قابل اعتماد بودن و هک بودن نرم افزار کافی است؟ نه کاملا.
علاوه بر نوشتن کد خوب، یک مهندس نرم افزار باید چیزهای دیگری را به خاطر بسپارد. آیا برنامه آیکون درستی دارد؟ آیا اطلاعات نسخه تکمیل شده است؟ آیا امضای دیجیتال معتبر وجود دارد؟ آیا این برنامه همه کاهش های امنیتی موجود را فعال می کند؟ آیا به درستی سازگاری با نسخه های اخیر سیستم عامل را اعلام می کند؟ بیت های زیادی وجود دارد که باید در نظر داشت و تجزیه و تحلیل کد استاتیک به هیچ یک از آنها کمک نمی کند. خوشبختانه راه حلی وجود دارد: تجزیه و تحلیل استاتیک فایل های اجرایی نهایی کامپایل شده.
هسته اصلی هر برنامه دسکتاپ یا موبایل معمولاً یک است فایل اجرایی یا یک بسته برنامه. اول، وجود دارد کد برنامه، که در برخی از نمایش های قابل خواندن و اجرایی توسط کامپیوتر، مانند مجمع بومی (که مستقیماً روی هسته پردازنده اجرا می شود) یا یک زبان میانی (که در یک …