BOSTON  UNIVERSITY
Metropolitan College
MET CS 231 S A1 Programming with C++
Course Syllabus
	
	Summer Term 1, 2015                    Tuesday and Thursday Evenings, 5/19 – 6/25, 6:00 – 9:30PM
John S. Maslanka, Ph.D.                                                              Charles River Campus: TBD
Email: maslanka@bu.edu                                                         Department phone: (617) 353-2566
                                                                                    Home phone: (781) 784-6232 with voicemail

Course Objective:

      To gain an understanding of the Object-Oriented paradigm, and of the "class" syntax 
      in the generalized Object-Oriented programming language C++.  Upon completion 
      of this course the student is expected to be able to use the C++ language to design
      and write Object-Oriented computer programs to solve a selection of quantifiable
      problems.

Preliminary Expectations:

All students have successfully completed the equivalent of MET CS 201, Introductory Computer Science with C++.  Also, you may be professionally engaged in computer programming either currently or recently.  All students are advised to have an awareness of the C++ programming language and of object-oriented programming.  You will be expected to do your homework exercises on a system which supports an ANSI C++, such as Windows, MacOS  or a UNIX or linux-based system.  I currently use MS Visual C++ V10 on my laptop.

Gradables:
Five Homework Problems: 10% each, one Midterm Exam 30% and one Final Exam 20%.  The Midterm and the Final will be given on the date specified in the attached course calendar. The problem statements for the assignments will be provided by the Professor. Please note: All rules and regulations of Boston University Metropolitan College regarding academic integrity apply to the conduct of this course.

Textbook:
Professor Maslanka’s textbook, Introduction to Programming in C++, first edition,   published by Kendall-Hunt, ISBN 978-0-7575-6536-6, available in the BU Bookstore textbook division, fourth floor, at Barnes and Noble in Kenmore Square.

Website:
Blackboard Website for the course under learn.bu.edu.  This website will be on learn.bu.edu and all students are expected to enroll in it and read its materials regularly.  You will need a BU computer id and password to access it.

Optional Reference:
C++ How to Program, 9th edition by Paul and Harvey Deitel, Pearson, 2014,
ISBN 978-0-13-337871-3.  Conforms to C++ 2011 Standard.  This is an excellent reference book for your programming library.

Dr. Maslanka is a professional writer of computer language compilers and run-time systems. He worked at the former Digital Equipment Corporation from 1975 to 1984 in the Marlboro, MA facility  He has been most recently employed by Hewlett Packard Company / Compaq Computer Corporation/Digital Equipment Corp in their Nashua NH facility, from 1991 to 2002 when he took retirement.  Also, he has taught part time in the BU MET College Computer Science Department since 1973.

BU MET CS 231                       Course Calendar                       Summer Term 1, 2015

Dates	Topics								Readings 

May 19	Course Overview						Ch 0-2				C++ Primary Inputs and Outputs, including Testing
		Control of Flow							Ch 3
		Fundamental Data Types 					Ch 4

May 21	Arrays and Strings						Ch 5-6
		new and delete operators and Operator Precedence		Ch 7- 8

May 26	Functions, including Overloading and Recursion;			Ch 9
		C++ File IO;   Homework 1 due in email			Ch 10

May 28	C++ class - basic concepts and syntax				Ch 11-12

June 2	C++ class - basic Constructors and Destructors			Ch 12
		Data Abstraction
		Homework 2 due in email – C++ class required

June 4        C++ class - Overloading of Methods and Operators		Ch 13
		Midterm Exam,  90 minutes		

June 9	friend functions and friend classes 				Ch 14
		Composition involving multiple objects 				Ch 15
		Exception Handling						Ch 16
		template classes						Ch 19

	June 11	Usage of Dynamic Memory – creating a string class, 		Ch 17
		Operator overloads with access to dynamic memory
		lists/cursors
			Homework 3 due in email – C++ class required	

June 16	Concept and Usages of Inheritance in C++			Ch 18
	 	Abstract Data Types and Virtual Methods

June 18	Polymorphism/Delegation in C++    				Ch 18
		Homework 4 due in email – C++ class required

June 23	Standard string Library						Ch 17.6
		Standard Template Library					Ch 20		

June 25	Final Exam 6:15 - 8:15 PM.
		Homework 5 due in email – C++ class required
		All course work must be completed by this evening.