Linktip: Ruby on Rails Code Quality Checklist

Ich weiß nicht mehr, wo ich den Link her habe. Die Seite ist schon seit etlichen Tagen in meinem Browser offen. Heute habe ich mir dann doch mal die Zeit genommen und die Ruby on Rails Code Quality Checklist durchgelesen. Mir gefallen die in der Liste aufgeführten Punkte so gut, dass ich sie euch nicht vorenthalten möchte.

  1. Each controller action only calls one model method other than an initial find or new. (Make custom .new or .update methods in the model with all necessary)
  2. Only one or two instance variables are shared between each controller and view.
  3. All model and variable names are both immediately obvious (to a new developer) and as short as possible without using abbreviations.
  4. All custom "finds" accessed from more than one place in the code use named_scope instead of a custom method.
  5. A .find or .find_by_ is never called in a view or view helper.
  6. There is zero custom code that duplicates functionality of a built-in function in rails.
  7. Code has been aggressively DRYed during development.
  8. All functionality used in two or more models has been turned into a library/module.
  9. All logic duplicated between two or more apps has been turned into a gemified plugin.
  10. STI is not used anywhere
  11. Every design choice should yield the most simplistic design possible for the need of users at the current time. (No guesses for future functionality were designed into the application.)
  12. Close to full test coverage exists at the highest level of the application: on and between controller actions.
  13. Coverage is highest for code used by the most number of end users.
  14. All tests pass before code is merged into a shared repository.
  15. Every fixed defect on a deployed product has tests added to prevent regression.
  16. Every plugin installed has been code reviewed.

Einige Punkte und Gedanken auf der Liste waren für mich neu. So z.B. die ersten beiden Punkte. Werden diese eingehalten, führt das zwangsläufig zu Fat Models und skinny controllers, wie auch auf der verlinkten Seite näher erläutert.

Andere Punkte der Liste sind alte Bekannte u.a. aus Clean Code und The Pragamtic Programmer. Don’t repeat yourself, nicht auf Halde entwickeln, aussagekräfige Namen und Tests, Tests, Tests.

Alles in allem denke ich, dass solch eine Checkliste durchaus auch in einem Softwarehaus Sinn machen kann. Natürlich nur dann, wenn sich jeder Entwickler auch daran hält und auch daran halten möchte.

Genug von meiner Seite. Folgte dem Link zur Ruby on Rails Code Quality Checklist und lest die Erläuterungen zu den o.g. Punkten.

Linktip: Ruby on Rails Code Quality Checklist
Markiert in:         

Kommentar verfassen