CS 2334 - Programming Structures and Abstractions

Honors Assignment 1 — Comparison One

Due Friday, September 27, 2013, 1:30pm

NOTE: This assignment is due at the beginning of the class period. This means that if you are even a minute late, you lose 20%. If you are worried about potentially being late, turn in your assignment ahead of time. Do this by submitting them to me during office hours or by sliding it under my office door. Do not send assignments to me through email or leave them in my departmental mail box.

As discussed in class, Java does not allow for multiple inheritance from Classes (but does allow for implementation of multiple Interfaces.) In contrast, other languages such as C++ do allow for multiple inheritance of Classes. This assignment explores the design trade-offs inherent in single versus multiple inheritance. It looks at benefits and costs from the perspectives of users of the language (software developers) and creators of the language (language developers).

The assignment.

Write a design comparison evaluation examining single and multiple inheritance from a conceptual standpoint and their implementation in Java and C++, respectively. In your comparison, be sure to describe the following:

You may cover these points in any order that clearly conveys the information required.

Your comparison paper should be approximately three to five pages in length (roughly 80 characters per line, 50 lines per page). Note that this is a guideline range. Values somewhat outside this range are acceptable. However, if you go much over five pages, I may take off points for being excessively verbose. This page range does not include figures used in your explanations, which are encouraged and may take up any amount of space.

What to turn in.

Turn in an electronic copy of this document as a PDF file by submitting it to the appropriate droxbox in D2L and a paper copy of this document at or prior to the start of the class period on the due date.