Software Engineering at Google Chapter #20 - Static Analysis (2 of 3)

  • Also beware of too many pedantic or nitpicks or “technically correct” things in your static analysis tools. Too much of this will drive developers to ignore all warnings
  • “Linters” are a type of static analysis tool and are the most common type of static analysis tool found in the wild
  • Other static analysis tools do more advanced things such as check code execution paths, data flows, and even automatically fix issues (replace a deprecated function with the new version)
  • Static analysis (linters & syntax checkers) can be helpful for everyone, not just software developers…
    • Config files for applications
    • Domain-specific expertise such as local date / time formats
  • Google’s static analysis tool is named Tricorder and the design goals are:
    • ‘Only delivery valuable results to users’
    • To scale Tricorder Google uses microservices and what they call analyzers (think plugins)
    • Analyzers are for project level customizations, not user level customizations because user level customizations lead to confusion and loss of standardization



Thank you for your time and attention.
Apply what you've learned here.
Enjoy it all.