SonarSource Rules
  • Products

    In-IDE

    Code Quality and Security in your IDE with SonarQube Ide

    IDE extension that lets you fix coding issues before they exist!

    Discover SonarQube for IDE

    SaaS

    Code Quality and Security in the cloud with SonarQube Cloud

    Setup is effortless and analysis is automatic for most languages

    Discover SonarQube Cloud

    Self-Hosted

    Code Quality and Security Self-Hosted with SonarQube Server

    Fast, accurate analysis; enterprise scalability

    Discover SonarQube Server
  • SecretsSecrets
  • ABAPABAP
  • AnsibleAnsible
  • ApexApex
  • AzureResourceManagerAzureResourceManager
  • CC
  • C#C#
  • C++C++
  • CloudFormationCloudFormation
  • COBOLCOBOL
  • CSSCSS
  • DartDart
  • DockerDocker
  • FlexFlex
  • GitHub ActionsGitHub Actions
  • GoGo
  • HTMLHTML
  • JavaJava
  • JavaScriptJavaScript
  • JSONJSON
  • JCLJCL
  • KotlinKotlin
  • KubernetesKubernetes
  • Objective CObjective C
  • PHPPHP
  • PL/IPL/I
  • PL/SQLPL/SQL
  • PythonPython
  • RPGRPG
  • RubyRuby
  • RustRust
  • ScalaScala
  • ShellShell
  • SwiftSwift
  • TerraformTerraform
  • TextText
  • TypeScriptTypeScript
  • T-SQLT-SQL
  • VB.NETVB.NET
  • VB6VB6
  • XMLXML
  • YAMLYAML
Dart

Dart static code analysis

Unique rules to find Bugs, Vulnerabilities, Security Hotspots, and Code Smells in your DART code

  • All rules 126
  • Vulnerability4
  • Bug15
  • Security Hotspot8
  • Code Smell99
Filtered: 13 rules found
convention
    Impact
      Clean code attribute
        1. "child" properties should be placed last in widget instantiation

           Code Smell
        2. "part of" directives should be used with strings

           Code Smell
        3. Triple slash should be used for documentation comments

           Code Smell
        4. Adjacent string concatenation should be preferred

           Code Smell
        5. Non-constant names should comply with a naming convention

           Code Smell
        6. Function declarations should be preferred over variables

           Code Smell
        7. Extension identifiers should comply with a naming convention

           Code Smell
        8. Local identifiers should not start with underscore

           Code Smell
        9. File names should comply with a naming convention

           Code Smell
        10. Package names should comply with a naming convention

           Code Smell
        11. Constant names should comply with a naming convention

           Code Smell
        12. Files should end with a newline

           Code Smell
        13. Class names should comply with a naming convention

           Code Smell

        "part of" directives should be used with strings

        intentionality - clear
        maintainability
        Code Smell
        • convention

        part of directives should be used with strings, rather than with library names.

        Why is this an issue?

        How can I fix it?

        More Info

        Often Dart libraries are small enough to be entirely contained in a single file.

        However, when the file becomes too large and it’s not possible to split the library into smaller libraries (as advised by the Dart team in the note here), Dart defines a part of directive, which allows developers to split the library into multiple smaller chunks.

        When a library is split into multiple files, each part has to refer the library it belongs to, and it can do so with two similar but alternative syntaxes:

        • by name identifier: part of my_library;
        • by a URI string: part of 'my_library.dart';

        The second syntax is more precise and flexible, because it explicitly identifies the file that contains the main body of the library, whereas a reference by identifier needs to be resolved to a URI by the Dart compiler.

        What is the potential impact?

        If the part of directive is used with a library name, the Dart compiler may resolve the library incorrectly, if multiple libraries with the same name but different paths exist in the package.

          Available In:
        • SonarQube CloudDetect issues in your GitHub, Azure DevOps Services, Bitbucket Cloud, GitLab repositories
        • SonarQube ServerAnalyze code in your
          on-premise CI
          Developer Edition
          Available Since
          10.8

        © 2008-2025 SonarSource SA. All rights reserved.

        Privacy Policy | Cookie Policy | Terms of Use