using namespace std in header files |
2 points |
Always apply unless explicitly allowed |
| Global variables |
2 points |
Always apply unless explicitly allowed |
| Adding public variables/functions or exposing private variables/functions |
3 points |
Always apply unless explicitly allowed |
| Writing class definitions and implementations in one file |
3 points |
Always apply unless class is templated or explicitly allowed |
| No comments in projects |
2 points |
Where "project" is anything with more than 2 classes involved |
| No comments in larger program |
1 points |
Unless code is readable without comments |
| Long files (>500 lines) |
2 points |
Unless starting file is already long, or if we specify that this is allowed |
| Code is completely unreadable |
2 points |
Example: no pattern or no indentation |
| Code is partially unreadable |
1 points |
Example: no uniformity in indentation levels |
| Large blocks of commented code |
2 points |
Acceptable as proof of work |
| Poor code quality |
Up to 2 points |
Includes repeated code, redundant logic, etc. |