Skip to content

Commit 71c5e76

Browse files
authored
Merge branch 'main' into add-analyzer-design-for-jedliks-toy-car
2 parents 100cc89 + 725a907 commit 71c5e76

File tree

1 file changed

+12
-0
lines changed
  • exercises/concept/calculator-conundrum/.meta

1 file changed

+12
-0
lines changed

exercises/concept/calculator-conundrum/.meta/design.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,15 @@
1818

1919
- `conditionals-if`: know how to do conditional logic.
2020
- `switch-statement`: know how to work with a `switch` statement.
21+
22+
## Analyzer
23+
24+
This exercise could benefit from the following rules in the [analyzer]:
25+
26+
- `essential`: Verify that the solution is using the try catch statement for the division.
27+
- `actionable`: If the solution is wrapping all the code in a try catch statement, instruct the student to only use the `try catch` for the division statement
28+
- `actionable`: If the solution uses only `if` statement, instruct the student that he/she can use the `switch case` statement to perform the operations.
29+
- `informative`: If the solution does not throw the exception for `Operation cannot be null` and `Operation cannot be empty` at the beginning, suggest the fail-fast approach to the student.
30+
Inform this way of implementation can be less error-prone and more readable as suggested by Martin Fowler: <https://martinfowler.com/ieeeSoftware/failFast.pdf>
31+
32+
[analyzer]: https://github.com/exercism/java-analyzer

0 commit comments

Comments
 (0)