Artifact 1: Java Assignment 2b
A command line based calculator that operates using Reverse-Polish Notation, which is a post-fix notation where the two operands come before their operator, instead of the operator being inbetween the operands. This notation scheme was created to reduce memory access in computers and to be able to efficiently utilize a program stack.
Knowledge Applied
In this assignment, I utilize my knowledge of:
- Java, including:
- Object-Oriented Design
- polymorphism
- method Calls
- stacks and First-In/Last-Out structures
- refactoring
- documentation
Skills Demonstrated
In this assignment, I demonstrate my ability to:
- apply mathematical concepts in unusual ways
- design and test code using JUnit tests
- find generalizations between similar classes and apply polymorphic concepts to them
I consider this assignment to be one of my best works because of the amount of planning I went though to ensure I got the best mark I could, and that I had plenty of time to work on other projects. Through careful time divisiom, planning, and code-structuring, I was able to create a program that was uniquely mine, and fully satisfied the assignment requirements.
A large amount of time in this project was spent on commenting my code to make it more understandable from an outside source, but I believe this was worth it, as the source code is almost as readable as plain english. Another thing in this assignment that took a large amount of time was dividing each individual task into as many methods as needed for perfect clarity. I felt that the time spent on commenting and separating the code into many methods was very valuable though, because it taught me a lot about program structure, and programming in a way that is easiliy maintainable.
The source code for this assignment can be downloaded here.