CSSE 221: Fundamentals of Software Development Honors

BigRational

Objectives

  • Create a class to store and process a rational number of arbitrary precision, e.g.
            74939393930003456 / 83838384550230300266666629999
  • Using the Java API
  • Implementing interfaces (writing to a specification)
  • Implementing by using documented stubs
  • Unit testing
  • The Object class and when its methods should be overridden
  • Tasks

    1. Background research: Answer the questions on today's quiz. 
    2. Checkout the BigRational project in Eclipse. (See JavaEyes if you forgot how.)
    3. Examine the BigRational class. Do the TODO items in order. Commit your code to SVN often, say after you get each method to work. That way you’ll have a backup of each phase of your work. Some special notes:

    In all your code:

    • Write appropriate comments:
      • Javadoc comments for public fields and methods.
      • Explanations of anything else that is not obvious.
    • Give self-documenting variable and method names:
      • Use name completion in Eclipse, Ctrl-Space, to keep typing cost low and readability high.
    • Use Ctrl-Shift-F in Eclipse to format your code.
    • Take care of all auto-generated TODO's.
      • Then delete the TODO comment.
    • Correct ALL compiler warnings.
      • Quick Fix is your friend!

    Here is the grading rubric for this assignment.

    Turn-in Instructions

    Turn in your programming work by committing it to your SVN repository for this project. Make sure that your unit tests are committed as well!