Facebook открыл код статического анализатора Infer

11 июня 2015 года

Facebook перевёл в разряд открытых проектов статический анализатор Infer, который можно использовать для выявления ошибок в приложениях на языках Си, Objective-C и Java. В Facebook система применяется для проверки программ, разрабатываемых для платформ Android и iOS. Infer позволяет на основе анализа кода, без непосредственного запуска программы, выявлять такие проблемы, как разыменование указателей NULL, утечка ресурсов, проблемы при работе с памятью и различные ошибки, которые могут приводить к краху в процессе работы.

В основе Infer лежит несколько академических теорий (Архивная копия от 2 января 2018 на Wayback Machine), связанных с созданием алгоритмов математической логики, нацеленных на доказательстве корректности компьютерных программ и оптимизированных для решения задач оценки правильности кода. При анализе кода применяются логические рассуждения, на основе которых строится план выполнения программы, в котором система пытается повторить типовые рассуждения разработчика, проводящего ручной аудит кода. В настоящее время Infer достиг неплохой для автоматизированных средств эффективности, выявляя около 80% проблем из общего объёма ошибок, информация о которых поступает разработчикам. Код Infer написан на языках OCaml и Python, и распространяется под лицензией BSD.

Источники править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Facebook открыл код статического анализатора Infer», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.