CSE687 - Object Oriented Design
Lecture #1 - Introduction to OOD
Revised: 13 January 2009
Web Resources:
Stroustrup's Home Page,
Assoc. of C/C++ Users,
C++ at Microsoft,
Code Project,
Sells Brothers,
Guru of the Week,
C/C++ User's Journal,
devCentral,
Dr. Dobb's Journal,
Boost Library,
techNetCast
Content:
This lecture is an introduction to the CSE687 course. Today we discuss topics to be covered
in this course, its
projects, examinations, and grading. We then introduce the notion of modules and discuss
common notation to be used throughout the course.
-
Office Hours
-
Starting this Friday, I will hold help sessions from 9:00am until 11:45am each Friday in CST 4-201.
Starting Friday next week, the TA's will also hold
"surviving OOD help sessions each Friday at 4:00pm, also in CST 4-201.
-
Survey student background
-
Strategy versus Tactics
-
Why C++? Why not C#?
-
C++, An Assessment
-
Syllabus
Describes topics to be covered,
reading material for you to digest before coming to class, and due dates
for the assigned projects.
-
There are two ways to retrieve example code from the college server.The easiest is to go to the class code folder:
http://www.ecs.syr.edu/faculty/fawcett/handouts/CSE687/code,
browse to the folder of the code you want, and right-click on the zip file in that folder and save-target.
Another way is to use a secure FTP client like FileZilla
-
Project #1 Specification
-
Visual Studio Help Notes
-
Visual Studio Help Session Notes
-
ECS (College of Engineering and Computer Science) Computer clusters:
-
Visual Studio 2008 will be used in this class, and it is installed on all the ECS Clusters, but
may not be on other university clusters. So:
-
You need an account - ECS Help Desk.
-
Operational Quirks:
Your home account is hosted on a drive mapped to H:. However, Visual Studio thinks mapped
drives are not secure, and does not happily let you work there.
You can do all your work on the C: drive of whatever machine you are using, but that is always wiped
clean when you log-off. Thus, you may wish to work on the C: drive, save frequently to your home H:,
and especially, save just before logging off.
-
Help Session in CST 3-201 computer cluster.
-
Code Grade Sheet
-
Submission Requirements
-
Parsing Prototype code - help for Project #1
This demonstration code illustrates how to use modules, gives several good examples of modules,
and may be of significant help to you in developing Project #1.
-
Parsing Prototype Structure
-
Modules
A module is a physical package of code in files. In this course, by module, we mean
those source code files that constitute a compilable entity. The result of compilation
may be an execution image (exe), a dynamic link library (dll), or an object file (obj).
A simple module example is provided in the code directory:
HiResTimer
-
Notation
When discussing object oriented designs, we will often use a subset of the Universal
Modeling Language (UML), described briefly in these notes. You also may wish to
consult UML Tutorial