CorePrinciples

### Cairngorm 3 - [ Home ][1] - [ Guidelines ][3] - [ Tools ][4] - [ Libraries Downloads ][2]
### Cairngorm 2 - [ Home ][5] - [ Framework Downloads ][6] - [ Eclipse Plugin ][7]
### Project - [ Source ][8] - [ Bug Database ][9] - [ Submitting a Patch ][10] - [ Developer Documentation ][11] - [ Forums ][12] - [ License ][13]

Core Principles

  • Minimize script block logic in MXML, extract into behaviour objects following Single Responsibility Principle.
  • Prefer small classes with high functional cohesion (every method refers to all properties).
  • Show the intent of code clearly. Understand options in loose coupling and apply when motivations are clear.
  • Allow modular development and testing; organize by functional areas, control and limit dependencies between functional areas, extract and control shared infrastructure.
  • Perform automated, functional testing.
  • Perform automated unit testing and differentiate from automated functional testing; emphasize on behaviour instead of structure and wiring.
  • Control quality and streamline a release with build automation.
  • Prefer convention over configuration.
  • Create genuinely reusable view and non-visual (i.e. formatters, validators, log targets) components only using Flex SDK APIs without domain or IoC framework knowledge.

References

Martin, R. Single Responsiblity Principle. http://www.objectmentor.com/resources/articles/dip.pdf of OOD principles .