Need advice about which tool to choose?Ask the StackShare community!

Infer

18
69
+ 1
0
SonarQube

1.7K
2K
+ 1
52
Add tool

Infer vs SonarQube: What are the differences?

Key Differences between Infer and SonarQube

  1. Analysis Technique: Infer and SonarQube employ different analysis techniques to identify code quality issues. Infer is a static analysis tool that uses a combination of abstract interpretation and symbolic execution to detect bugs and vulnerabilities. On the other hand, SonarQube utilizes a rule-based approach, where it compares code against a set of predefined rules to identify issues.

  2. Supported Languages: Another significant difference is the set of supported languages. Infer primarily focuses on providing analysis for C, C++, and Objective-C code. In contrast, SonarQube supports a wide range of languages, including Java, C#, JavaScript, Python, and many more.

  3. Integration and CI/CD Support: Both Infer and SonarQube offer integration options with build systems and CI/CD pipelines. However, the approach differs to some extent. Infer can easily integrate with build systems like Gradle, Buck, and Maven, allowing analysis during the build process. SonarQube provides plugins for popular build tools like Maven and Gradle, enabling seamless integration with CI/CD pipelines.

  4. Developer-Friendly Tool: Infer focuses on providing developers with fast feedback during the development process, aiming to catch defects before they surface in code reviews or testing. It provides actionable reports by identifying the exact location of bugs and vulnerabilities. SonarQube, on the other hand, offers a more comprehensive analysis of various code quality aspects, along with reporting and visualization features for code maintainability and technical debt.

  5. Cost and Licensing: The two tools also differ in terms of cost and licensing. Infer is an open-source tool released under the MIT license, making it free to use and modify. SonarQube comes in both open-source and commercial editions, with the commercial editions offering additional features and support that come at a cost.

In summary, Infer stands out with its advanced static analysis techniques, focused language support, and developer-centric features, while SonarQube offers a broader language support, comprehensive code quality analysis, and customizable reporting capabilities.

Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Infer
Pros of SonarQube
    Be the first to leave a pro
    • 26
      Tracks code complexity and smell trends
    • 16
      IDE Integration
    • 9
      Complete code Review
    • 1
      Difficult to deploy

    Sign up to add or upvote prosMake informed product decisions

    Cons of Infer
    Cons of SonarQube
      Be the first to leave a con
      • 7
        Sales process is long and unfriendly
      • 7
        Paid support is poor, techs arrogant and unhelpful
      • 1
        Does not integrate with Snyk

      Sign up to add or upvote consMake informed product decisions

      What is Infer?

      Facebook Infer is a static analysis tool - if you give Infer some Objective-C, Java, or C code, it produces a list of potential bugs. Anyone can use Infer to intercept critical bugs before they have shipped to people's phones, and help prevent crashes or poor performance.

      What is SonarQube?

      SonarQube provides an overview of the overall health of your source code and even more importantly, it highlights issues found on new code. With a Quality Gate set on your project, you will simply fix the Leak and start mechanically improving.

      Need advice about which tool to choose?Ask the StackShare community!

      What companies use Infer?
      What companies use SonarQube?
      Manage your open source components, licenses, and vulnerabilities
      Learn More

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with Infer?
      What tools integrate with SonarQube?

      Sign up to get full access to all the tool integrationsMake informed product decisions

      What are some alternatives to Infer and SonarQube?
      Imply
      It is a complete analytics platform built around Apache Druid. While traditional business intelligence workflows focus on using static reports and dashboards, it provides rapid, dynamic access to streaming and batch data. Leverage the power of Druid to instantly create ad-hoc views on real-time and historical data and explain any pattern or anomaly.
      JavaScript
      JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
      Git
      Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
      GitHub
      GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over three million people use GitHub to build amazing things together.
      Python
      Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
      See all alternatives