Содержание
Хотя я всегда был убежденным сторонником бесплатных приложений с открытым исходным кодом, сложно вручную проверять код каждого приложения, и я часто с нетерпением жду инструментов проверки кода.
Эти инструменты помогут вам быстро обнаружить плохие привычки программирования, ключевые изменения в функциях компонента, компоненты с высоким уровнем риска, ошибки безопасности и т. д. Более того, эти инструменты часто представляют собой индикаторы на основе графического пользовательского интерфейса, что позволяет легко понять их, не обладая знаниями в области программного обеспечения. указанный язык программирования. При этом не все приложения для проверки кода одинаковы. Итак, вот лучшие инструменты проверки кода как для частных лиц, так и для предприятий.
Лучшие инструменты проверки кода
1. Геррит
Gerrit — это веб-инструмент проверки кода, разработанный Google, для работы которого требуется сервер JDK. Он работает синхронно с GitHub. Итак, прежде чем вы запустите код в производство, он проходит через Gerrit, где ваши коллеги могут его просмотреть. Gerrit поддерживает отправку проекта с помощью команд git с использованием SSH или HTTPS. Например, вы хотите загрузить свой проект в Gerrit для проверки. Вы можете использовать SSH-сервер Gerrit и использовать «git push» для загрузки своих репозиториев в Gerrit.
Gerrit также предлагает набор плагинов, таких как CodeMirror и Phabriactor, для связи с другими инструментами проверки кода и получения дополнительных функций.
Обзор:
- Хорошо интегрируется с GitHub.
- Работает с серверами SSH и HTTPs с поддержкой git.
- Поддерживает ограниченное количество языков, таких как C, C++ и
Загрузить Геррит
2. Родкод
RhodeCode — это еще один инструмент коллегиальной проверки кода, такой как Gerrit, который работает синхронно с GitHub. Однако он также хорошо интегрируется с Mercurial и Subversion. По сравнению с Gerrit, он обеспечивает более богатый и интуитивно понятный интерфейс. Вы можете комментировать и вносить изменения в код через сам веб-интерфейс RhodeCode. В отличие от расширений Gerrit, RhodeCode предоставляет API JSON-RPC, позволяющий создавать с его помощью сторонние инструменты. Моя самая любимая функция — визуальный журнал изменений, который позволяет увидеть изменения в процессе разработки с высоты птичьего полета и помогает отслеживать их.
В дополнение к этому у вас также есть функции безопасности, такие как уведомления о правилах хранилища. Он информирует администратора о подозрительных действиях в репо. Вы также можете ограничить доступ к репозиторию определенными диапазонами IP-адресов.
Обзор:
- Инструмент проверки кода коллег
- Встроенный редактор в веб-интерфейсе RhodeCode
- Параметры безопасности для аудита, ACL, IP-фильтрация и т. д.
Загрузить РодКод
3. Найдите ошибки безопасности
Find Security Bugs, вопреки названию, представляет собой плагин для поиска всех типов ошибок в вашем коде. Он может обнаруживать неправильную практику написания кода, его правильность, узкие места в производительности, ошибки безопасности, сомнительный код, многопоточную корректность и т. д. Плагин работает синхронно с центральным репозиторием Maven. Однако, если вы используете IDE. Его можно использовать локально вместе с Netbeans, Eclipse, IntelliJ, Jenkins и Sonar Qube. Например, я использовал Eclipse. На торговой площадке Eclipse он доступен под названием SpotBugs. Итак, процесс установки оказался довольно простым и понятным.
Единственное предостережение относительно Spotbugs: он работает только с кодом Java и приложениями Java EE.
Поддерживаемые языки: Java, Java EE
Обзор:
-
- Работает синхронно с центральным репозиторием Maven.
- Плагин для Eclipse, Jenkins, Netbeans и т. д.
Загрузить Найдите ошибки безопасности
4. Поиск в Diggity
SearchDiggity – это проект, объединяющий популярные хакерские инструменты, такие как GoogleDiggity, BingDiggity, SHODAN Diggity, FlashDiggity и т. д. В основном это инструмент для проверки безопасности вашего веб-приложения или сервера приложений. Он использует поисковую систему Google, Bing и SHODAN для атаки и проникновения на ваш веб-сайт или сервер. Он использует комбинацию регулярных выражений в поисковых запросах для утечки данных. Например, SearchDiggity может проверить, хранятся ли ваши ключи AWS в виде обычного текста или подвержен ли вход на ваш сайт SQL-инъекциям.
Это необходимо, если ваш веб-сервер обрабатывает огромный объем веб-трафика и хранит большой объем данных.
Если вы получаете сообщение об ошибке «Обнаружен бот Google, сканирование приостанавливается на 15 минут», вы можете изменить SearchDiggity, чтобы использовать официальные платные API , предоставленный Google, Bing и SHODAN в разделе «Справка»>«Содержание».п>
Обзор:
- Возможность проверять SQL-инъекцию и уязвимые порты на вашем веб-сервере.
- Работает с использованием поисковой системы Google, Bing и SHODAN.
- Инструмент только для Windows
Загрузить ПоискDiggity
5. Фабрикатор
Phabricator — это набор бесплатных инструментов для проверки веб-кода. Это приложение LAMP (Linux, Apache, MySQL, PHP), написанное на PHP, и представляет собой скорее инструмент аудита и совместной работы, такой как GitHub.
Вы можете опробовать Phabricator перед установкой его на свой сервер LAMP. У него есть размещенный веб-экземпляр под названием Фасилити . Вы можете синхронизировать свои репозитории кода GitHub или SVN с этим экземпляром напрямую. Самый важный инструмент в Phabricator — Дифференциал. Он работает аналогично коммитам GitHub. После внесения изменения оно уведомляет всех пользователей о необходимости просмотреть это изменение. В нем представлен полный обзор изменений и кода. После одобрения изменение утверждается и может быть запущено в производство.
Поддерживаемые языки: нет
Обзор:
- Сервер LAMP
- Совместная работа и просмотр изменений в коде с другими пользователями.
- Аудит действий пользователей на веб-сервере
- Не работает на компьютере с Windows
6. Инспектор приложений MS
Недавно Microsoft выпустила инструмент проверки кода под названием Инспектор приложений . По словам Microsoft, этот инструмент был создан для анализа программного обеспечения с открытым исходным кодом и того, что выполняют код и библиотеки. Чтобы использовать Инспектор приложений, вам необходимо установить пакет «dotnet-sdk». Он выводит отчет в HTML-файле. Я попробовал это в почтовом приложении Nylas, и резюме отчета получилось довольно кратким.
Презентация хорошо разбита на категории и классифицирует функции программного обеспечения, используемые протоколы, вызываемые API и т. д. Например, с точки зрения хранения данных почта Nylas использует SQL и немного NoSQL для облачных служб обмена сообщениями PubSub. Мне просто нужно нажать кнопку «Хранилище данных» и «Просмотр» рядом с «Подробности». Справа отобразятся связанные правила, и, щелкнув по ним, вы увидите всплывающее окно с обзором кода. Перейти к просмотру кода и просмотреть код довольно легко и быстро.
Поддерживаемые языки: C, C++, C#, Java, JavaScript, HTML, Python, Objective-C, Go, Ruby, PowerShell, (API) AWS, Azure.
Обзор:
- Краткий отчет, легко ссылаться и просматривать код.
- Поддерживает несколько языков
Загрузить Инспектор приложений MS
Заключительные слова
Я использую Microsoft Application Inspector, поскольку приложение работает по принципу «беги и стреляй». Он поддерживает широкий спектр языков и дает довольно хорошее представление о коде. Если у вас есть собственный выделенный веб-сервер, Gerrit или Phabricator — хорошая альтернатива GitHub. Если у вас возникнут дополнительные проблемы или вопросы, дайте мне знать в комментариях ниже.
Читайте также: 7 лучших макетных плат для вашего первого проекта своими руками