CSGA 6375: Object-Oriented Software Design
What's this course about?
Instructor information
General information
Faculty:
Dr. A. G. Werschulz
- Office: Rm 815D.
- Phone: (212) 636-6325
Class meetings:
Thursdays, 4:00 p.m. to 6:00 p.m., in Room 520.
Office hours:
- Mondays: 11:30 a.m. to 12:30 p.m.
- Thursdays: 11:30 p.m. to 12:30 p.m.
- Thursdays: 3:00 p.m. to 4:00 p.m.
or by appointment.
Text and Readings
Ezust and Ezust, An Introduction to Design Patterns in C++ with
Qt, Second Edition (Prentice-Hall, 2012). I hope to cover
Chapters 1–11, 13, and 16.
Grading
- programming projects: 50%.
- midterm exam: 20%
- final exam: 20%
- participation: 10%
Programming projects will be graded
according to the following criteria:
- Correctness: 60%. The program should work
correctly. It should produce correct results for valid input. It
should handle invalid inputs appropriately; at the very minimum,
it should ``fail gracefully''.
- Style: 40%. This includes quality of the user
interface, and coding style. Here are some guides that may help
you with the latter:
- I have written a guide
to getting better grades. Although this is slightly geared to
courses having a lab component (in this case, CISC 2000/2010),
there's a lot of good advice here. Read it!
- Bjarne Stroustrup (the inventor of C++) has a
style guide
on the website
for his text Programming: Principles and Practice Using C++.
- Chapter 3 of our text has a set of coding standards. We will
pretty much adhere to same.
You might notice that these style guides don't agree 100% with
each other. There's a good Scott Adams (or maybe Randall
J. Schwartz) quote about the joy of having multiple sets of
standards, each disagreeing with the other, but I don't remember
what it is. :-)
Class email list:
oosd AT dsm.fordham.edu.
This can be used for both announcements and discussion.
Protocol
- Programming projects:
I hope to assign one programming project from each chapter of
the text. Unless specified otherwise, each project will be due at
the class meeting immediately after it is assigned.
- Midterm exam: Tentatively scheduled for
Thursday, October 11, during the usual class period.
- Final exam:Will be held on Thursday,
December 20, during the usual class period.
Additional Remarks
- You should read the following documents:
- Feel free to look at the overhead slides
I'm using for this class.
- Material that I wish to share with the class may be found in
the "share directory"
~agw/class/oosd/share, which
may be accessed from any of the Linux computers in the
dsm.fordham.edu subnet. (They cannot be accessed via
the Web.) Here you will find things such as the following:
- Source code for the book's examples (in the
src
subdirectory of the share directory). This was extracted from a
gzipped tarball of same that was provided by the authors; if
you want to install same on your own computer, your best bet is
to grab the latter and un-tar it.
- Support material for programming assignments, each in its
own subdirectory.
- Other material that I think will be of general interest.
- I wrote a guide to
getting grades for my CISC 1600 and CISC 2000 classes.
Although some of the content might be tilted towards those
courses, most of the information will help you understand issues
relating to program style, which weighs in at 40% of the grade for
a program.
- I'm assuming that you have some experience programming on our
Departmental Linux systems. Here are some resources that might
help you in this regard, should you need them:
- There is an online
introduction on using the Linux computer systems at Lincoln
Center that belong to the Computer and Information Sciences
Department.
- Our departmental machines run Linux, which is a free Unix-like
operating system. Many websites have material on Unix and Linux.
I have collected a
sample of same. You should especially look at the
material for beginners.
- We strongly encourage you to use the
emacs
editor.
- When you eventually get into templates, you'll find that
they can be tricky. You'll also find that the C++ compiler
will sometimes generate a bewildering maze of error messages
when dealing with same. There's a program named
gfilt that can help you tame this
beast.
-
If you believe that you have a disabling condition that may
interfere with your ability to participate in the activities,
coursework, or assessment of the object of this course, you may be
entitled to accommodations. If so, please schedule an appointment
to speak with me immediately or you may go to the Office of
Disability Services (LL207, x6282). Under the
Americans with Disabilities Act and Section 504 of the Vocational
Rehabilitation Act of 1973, all students, with or without
disabilities, are entitled to equal access to the programs and
activities of Fordham University.
Send mail to agw
STRUDEL dsm.fordham.edu
Last modified: Mon Nov 19 12:22:29 2012