Assignment
3 Spreadsheet and Patterns
Due April 12
This
assignment can be implemented in C++, Java or Smalltalk. The goal of this
assignment is to help you understand patterns by implementing them. Some
languages and class libraries contain features that implement all or part of
this assignment. An example is JTable in Swing. Do not use features in this
assignment that implement patterns for you or allow you to avoid implementing a
pattern. If you have any doubt if using a feature of a class library in this
assignment ask me.
1.
Implement a spreadsheet with 6 cells. Label the cells A, B, C, D, E, F. The
contents of the cells is to be displayed in a GUI. Each cell can contain either
a float or an equation. Equations can be limited to using +, -, / and * for
operators. You can, but are not required to, limit yourself to equations with
one operator. Equations can contain references to other cells. So cell C could
contain the equation A + B and cell E could contain the equation C - D. When
the user changes the value of a cell, other cells that refer to the changed
cell need to be updated. The spreadsheet needs an undo operation. The undo
should unlimited.
2.
Identify patterns that could be used in part 1. If you did not use a pattern
justify that decision.