In this code lab we show how to write clean code.
Each tag in this repository has a chunk of improvements.
We start from the simplest implementation of the calculator with hardcoded splitting the input, using a switch and without a stack.
Next code iterations include migrating to stack, to the dictionary of operations, to tokenizer and even dynamic operations loading.
Every step has junit tests so we can easily refactor the code.