Command
interfaces
Advantages:
- Hands remain on the
keyboard
- Fast input
- Powerful language constructs
possible ("print file1 file2 file3", wildcards, pipes, ...)
Disadvantages:
- Difficult to learn
- Difficult to retain
Guidelines:
- Use action-oriented
command names that come in the first place, i.e. <command> <arg1> <arg2>...
(e.g., "move a b"
rather than "a move b" or "location a b")
- Use congruent names
for antagonistic commands (Carroll 1982)
- Use consistent order
of arguments
- Specifiy direct object
in first argument (Barnard et al., 1982)
- Allow natural/consistent
abbreviations for command names
(e.g.,
"mv" for "move"; cf. Shneiderman 1998)
- Allow for variations
in the syntax; tolerate spurious words (e.g., "mv a to b")
- Allow for the definition
of aliases
- Provide command history
- Allow for the editing
and re-entry of the last few commands
- If possible, allow multiple
parameters and wildcards
- If possible, allow macro
definition and programming