CSSE 220 – Object-Oriented Software Development

Homework 1

Objectives

Begin to become familiar with Eclipse and Subclipse for Java programming.

Tasks

  1. On the course ANGEL site, find the Big Java Review Wiki. It’s on the Lessons tab. Read the Welcome page of the Wiki and the Instructions for the Review Wiki (see the link from the Welcome page).

    The Review Wiki isn't required this term, but I will give extra-credit for adding to the Wiki. If there is a Big Java Review Question not already answered on the Wiki, you can:

    1. Add the question and answer to the Wiki following the posted Instructions.
    2. Send an email to csse220-staff letting us know that you've added an answer.

    We'll double check your answer and give you some extra-credit points. The more stars on the review question, the more points awarded. You should check with your professor before tackling a three-star question.

  2. Complete the assigned reading for the next session: read Big Java chapter 1 (just skim §1.1–1.2 and §1.5) and §2.1–2.7. (The course schedule will list the reading to be completed before each session.)

    A note on Big Java: Big Java is, well, big. Much of the information in the first few chapters might be review to some students. Please feel free to skim sections that are review, but make it a habit to do the assigned reading. As we move past the first chapters more of the material will be completely new.

  3. Complete the relevant assessment exercise on ANGEL under Lessons → Assignments. In this case, it's Big Java Chapter 2, first assessment.
  4. Configuring Eclipse for Java: Hopefully you completed the following in class, but if not:

    Follow this link to instructions for configuring Eclipse for Java. Do the configuration described there, including creating a workspace for your Java programs (as described in the link).

    Note: your laptop should already have:

    If it lacks any of the above, use the above links to install whatever is needed. If you have trouble doing so, please seek help right away. You can visit the CSSE Lab, Moench F-225, most afternoons and any weekday evening, and look for the CSSE Fundamentals Assistant, or stop by my office.

  5. Programming: We started this in class. Finish the tasks on your own before the next class session, but be sure to seek help if your stuck!
    1. Choose Window > Show View > Other ... > SVN > SVN Repositories to create a tab (at the bottom of Eclipse) for the SVN Repositories view.

    2. In the SVN Repositories view, right-click and choose New > Repository Location to add the following repository:

          http://svn.cs.rose-hulman.edu/repos/csse220-201020-username

      where username is your Rose-Hulman username.

      You may need to enter your SVN (not Kerberos) password if Eclipse hasn't already cached it. Let me know if you need me to reset your SVN password.

    3. Your programming work for this assignment must be done in the HW1 project inside Eclipse. Use the SVN Repositories view to Checkout this project.

    4. Change the HelloPrinter program to say hello to someone else.
      • Change the @author tag to your own name.
      • Save and commit your changes.
    5. Enter, debug, and run the code for the Factorial program from the Session 1 slides.
      • Be sure to name the class Factorial, spelled just like that (case matters!).
      • Save and commit your changes. When committing, be sure to check the box to add Factorial.java to the repository.
    6. Write a new class SeriesSum with a method called seriesSum that calculates the sums of numbers from 1 to n, for positive integers n.
      • Model your code after the Factorial code. (So use a loop, instead of the closed-form formula for the sum.)
      • Be sure to name the class SeriesSum and the method seriesSum, spelled just like that (case matters!).
      • How large a value can you use for n before integer overflow occurs? (Put your answer in a comment in your program.)
      • Save and commit your changes. When committing, be sure to check the box to add SeriesSum.java to the repository.

      Remember, 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

We will grade your Wiki contributions (if any) and your Big Java assessment (i.e. quiz on the reading) using ANGEL. Turn-in your programming work by committing it to your SVN repository.