Programming Guideline Checklist

From Dreamwidth Notes
Jump to: navigation, search

This is a quick checklist of the Dev Programming Guidelines page; go there for details.

Code Formatting

  • Check for whitespace:
    • Four spaces for indentation. No tabs. (Easy check: cat -et command.)
    • No trailing whitespace.
    • Spaces around parenthesis and operators. A space between if and the starting parens, spaces between method arg parens, etc. Do not use spaces around hash indexes, however.
    • Suggested line break length at 120 characters.
  • Do not use extraneous parentheses, including on methods that don't need it or on postfix conditionals.
  • Use postfix conditionals -- ie, do_something() if $something;
  • Use human logic -- unless instead of if not.
  • Favor list assignment for local variables over multiple calls to shift.
  • Don't quote hash literals -- $HASH{DATA}, not $HASH{'DATA'}
  • Commenting: have you commented appropriately?
  • Use Carp's croak/confess and die for error reporting

DW Code Specific Conventions

  • Use $LJ::HOME over $ENV{LJHOME}
  • Use LJ::is_enabled() over $LJ::DISABLED
  • Use $u->get_cap over LJ::get_cap($u, ...) (or add an accessor in LJ::User)
  • English stripping is required for pages!
  • New files need appropriate header/credit