This course is an introduction to object oriented programming and design in
a software engineering context.
Topics include object-oriented programming (encapsulation, inheritance, polymorphism),
event-driven programming,
building an application with a graphical user interface (Qt), and
programming with a graphics library (OpenGL).
The course will require significant programming projects, with students
working in two-person teams.
Programming will be conducted in C++.
Students will learn Qt, a C++ GUI interface toolkit (qt.digia.com),
as well as the OpenGL graphics library (www.opengl.org)
Students are expected to have good working knowledge of C++.
Syllabus
WEEK
TOPIC
1
Introduction, overview
2-5
Qt
6-9
OpenGL
10-13
Class coverage of object-oriented programs in Qt and OpenGL
14-15
Student presentations
Instructor
Professor George Wolberg
Office Hours: Thursday, 11:30am-12:30pm, Room NAC 8/202N
wolberg@cs.ccny.cuny.edu
Teaching Assistant
Siavash Zokai
Office Hours: Wednesday, 5:00-6:00pm, Room NAC 8/202N
NOTE: Always include course AND section number (CSc 221 Sec. xx) in email subject line
ccny.cs221@gmail.com
Lectures
CSc 221: Monday/Wednesday, 3:30-4:45pm, NAC 7/227
Textbook
Blanchette and Summerfield, C++ GUI Programming with Qt 4,
Prentice Hall, 2006.
(Download)
Supplement: Molkentin, Daniel, The Book of Qt 4 , No Starch Press, 2007.
(Download)
Grading
Your final grade is computed as a weighted sum of the programming projects.
The projects will progressively build up into a large software system
from their component parts.
Good class participation is a bonus.