Go to the first, previous, next, last section, table of contents.
We evaluate our code based on the three criteria of correctness,
clarity, and performance.
- Correctness: Does the code correctly implement the specification?
- all specified functions implemented strictly correctly
- abundant use of
assert()
for correctness and for clarity
- a comprehensive test suite is provided by the programmer
- no memory leaks or segmentation faults
- Clarity: How easy is it to understand the code?
- conceptually elegant specification
- appropriate use of abstractions
- degree of conformance to style guide
- appropriate variable names, that obey naming conventions
- useful comments when essential to understanding
- proper formatting
- Performance: How well does the code perform (time, space)?
- speed of the code in real-world use
- efficiency of memory management
- performance relative to other implementations
Go to the first, previous, next, last section, table of contents.