From 018346fc871641dcb7a14a84c2475435537b0ef2 Mon Sep 17 00:00:00 2001 From: Jidong Xiao Date: Mon, 11 Sep 2023 20:19:44 -0400 Subject: [PATCH] adding hw1 rubric --- hws/01_text_justification/rubric.txt | 35 ++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 hws/01_text_justification/rubric.txt diff --git a/hws/01_text_justification/rubric.txt b/hws/01_text_justification/rubric.txt new file mode 100644 index 0000000..d7e2cec --- /dev/null +++ b/hws/01_text_justification/rubric.txt @@ -0,0 +1,35 @@ +This is just from last semester, and it may be slightly different from the one we eventually will use, because before they grade the homework, our graders will discuss whether or not to add or remove some of these items. Therefore you should just use this as a reference. + +20 pts + - README.txt Completed (3 pts) + - Missing # of hours or collaborators (-1) + - Collaborators too vague or not specific enough (-1) + - You did not edit README file (-3) + - Missing your name (-1) + - STL Vector & String (5 pts) + - did not use STL vector (-3) + - Uses strings ineffectively: e.g. by parsing through spaces manually (-2) + - Poor use of vectors (-2) + - Inefficient program: did not use const/reference where copy was not needed or used a reference on immutable primitive types like int (-2) + - Program Structure (12 pts) + - Contains only the main function and no other functions at all. (-4) + - Uses multiple functions, but most alignment logic is in the main function or one function. It's better to create separate functions for flush_left, flush_right and full_justify. (-3) + - Code contains irrelevant comments like terminal commands, large amounts of commented out code, or large amounts of TODO comments (-1) + - Almost total lack of helpful comments. (-4) + - Too few comments. (-2) + - Functions aren't well-commented. Each function should explain its purpose, algorithm, inputs, and outputs. (-2) + - Excessive comments, especially those that focus on what the code is doing rather than why (e.g. "creates a string"). (-1) + - Many comments are on same line as code. (-1) + - Overly long lines, in excess of 100 or so characters. It's recommended to keep all lines short and put comments on their own lines. (-1) + - Poor program structure: overly complex nested loops and if statements (-2) + - Code is clumped together or too dense, or has excessive whitespace. (-1) + - Poor formatting and/or spacing (-2) + - Poor choice of variable names: non-descriptive names (e.g. 'vec', 'str', 'var'), single-letter variable names (except single loop counter), variable shadowing, etc. (-2) + - Lacks error checking (num of args, invalid file names, invalid width limit, etc.) (-1) + - Redundant code: unnecessary method extracting, unused variable/method, unused value/result, unreachable code, etc (-1) + - Duplicated code: same code fragments or code fragments with only tiny differences (-1) + - Use of global variables (-1) + +Extra Credit (3 pts) (+1-3 for new shapes (by difficulty), described in the README.txt and sample output included with submission.) + - Non-trivial attempt made (+1) + - Great Job! (+2)