Robust Programming Practice (RPP)¶
- Goal
 - Maintainability:
 \(\checkmark\)
- Reliability:
 \(\checkmark\)
- Portability:
 \(\checkmark\)
- Performance:
 \(\checkmark\)
- Security:
 \(\checkmark\)
- Description
 These rules promote the production of robust software.
- Rules
 RPP01, RPP02, RPP03, RPP04, RPP05, RPP06, RPP07, RPP07, RPP08, RPP09, RPP10, RPP11, RPP12, RPP13, RPP14
- No Use of "others" in Case Constructs (RPP01)
 - No Enumeration Ranges in Case Constructs (RPP02)
 - Limited Use of "others" In Aggregates (RPP03)
 - No Unassigned Mode-Out Procedure Parameters (RPP04)
 - No Use of "others" in Exception Handlers (RPP05)
 - Avoid Function Side-Effects (RPP06)
 - Functions Only Have Mode "in" (RPP07)
 - Limit Parameter Aliasing (RPP08)
 - Use Precondition and Postcondition Contracts (RPP09)
 - Do Not Re-Verify Preconditions In Subprogram Bodies (RPP10)
 - Always Use the Result of Function Calls (RPP11)
 - No Recursion (RPP12)
 - No Reuse of Standard Typemarks (RPP13)
 - Use Symbolic Constants For Literal Values (RPP14)