Code Review Checklist - GEOS-ESM/MAPL GitHub Wiki

  • error handling
    • return success at end of procedure
    • use of _RC macro where appropriate
    • always check iostat for read/write
  • optional variables
    • KeywordEnforcer needed for growable list of optional arguments
  • Code quality
    • procedure too long
    • clear variable names
    • too many arguments
    • feature envy
  • Thread safety
    • no module variables
    • no saved variables
    • private state workspace component