INSY-422 Object Oriented Design (C & C++ Programming) Lecturer: Cameron Hayne email: hayne@sympatico.ca web site: http://hayne.net/McGill_C Marker: Kevork Abadjian office: McGill Continuing Studies room 1083 688 Sherbrooke West telephone: 398-8218 email: kevork.abadjian@mcgill.ca Course Objectives: This course will introduce students to the wide variety of programming languages available but will cover only a few of these languages. The main emphasis of the course will be on giving the students a working knowledge of the C and C++ languages. We will cover all of C and the basics of C++. Note: this course is more or less the same course that used to be offered as "Programming Languages". The title "Object Oriented Design" is rather misleading since the course is not about OO design at all. Recommended Text: Deitel & Deitel, "C++: How to Program", 2rd edition or later Evaluation: Assignments 25 % Midterm exam 25 % Final exam 50 % Note that there will be no makeup exam, restructuring of the evaluation scheme, nor any extra work given out if you miss an exam. There will be 3 programming assignments, each of which might take 8-15 hours or more of work. The course schedule below lists the official due dates for the assignments (the day of the lecture) but they can be handed in c/o the marker at the Cont Ed office up until 5pm on the Friday of that week. Note also that this course involves a lot of work - many students find that they need to spend 15-20 hours on each of the 2nd & 3rd assignments. Course Content: The first part of the course (approximately 8 weeks) will concentrate on the C language and the non-object-oriented parts of C++. The following aspects of the languages will be covered in depth: Data types, Variables, Operators & Assignments, Flow of Control, Input & Output, Memory Allocation, Structures, Functions, Preprocessor. The second part of the course (approximately 5 weeks) will consist of an introduction to "Object-oriented programming" (with an examination of the main features of the object-oriented features of the C++ language) Course Schedule: 1) Jan 4 first lecture 2) Jan 11 give out assignment # 1, style guide 3) Jan 18 4) Jan 25 assignment # 1 due, give out assignment # 2 5) Feb 1 6) Feb 8 7) Feb 15 midterm exam 8) Feb 22 study week - no class 9) Mar 1 assignment # 2 due, give out assignment # 3 10) Mar 8 11) Mar 15 12) Mar 22 assignment # 3 due 13) Mar 29 14) Apr 5 last class