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.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
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?
      See which teams inside your own company are using Infer or SonarQube.
      Sign up for StackShare EnterpriseLearn 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.
      ESLint
      A pluggable and configurable linter tool for identifying and reporting on patterns in JavaScript. Maintain your code quality with ease.
      Prettier
      Prettier is an opinionated code formatter. It enforces a consistent style by parsing your code and re-printing it with its own rules that take the maximum line length into account, wrapping code when necessary.
      TSLint
      An extensible static analysis tool that checks TypeScript code for readability, maintainability, and functionality errors. It is widely supported across modern editors & build systems and can be customized with your own lint rules, configurations, and formatters.
      RuboCop
      RuboCop is a Ruby static code analyzer. Out of the box it will enforce many of the guidelines outlined in the community Ruby Style Guide.
      See all alternatives