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, or exposing private variables/functions when unecessary |
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. |