instructor
instructor: Ellen M. Zimmer
office: Ross Hall 164
e-mail: zimmer@edinboro.edu
office phone: 732-1179
home page: http://users.edinboro.edu/zimmer
policies: General Guidelines
 
Office hours

Ross 164: MWF 11:00 - 1:00

CS Tutoring schedule: here

Fall
Course
Meeting times

CSCI 330-001
CRN #20304
MWF 1:00-1:50
Ross 136

 
Course
Description &
Prerequisites
This course provides a comprehensive study of object-oriented programming incorporating data structures and the standard template library. Topics include object-oriented concepts, object-oriented design, analysis and programming. Students prepare large programming assignments directed to develop competence in the concepts and language.

Prerequisite: C or better in CSCI 230
 

Course
Objectives
Upon sucessful course completion you will be able to:
  • Describe and implement a class object incorporating simple data
  • Design and implement a class object incorporating data structures
  • Design and implement a program that uses the standard template library
  • Design and implement a class hierarchy that uses exception handling
  • Design and implement a class inheritance hierachy that incorporates polymorphic methods
Texts &
Materials
Professional C++, 2nd Edition - Wrox Professional Guides (ISBN 978-0-470-93244-5)
                          by Gregoire, Solter, and Kleper

C++ Backpack Reference Guide (ISBN: 978-0321350138) (optional)
   by DePasquale

C++ Pocket Reference (ISBN: 978-0596004965) (optional)
   by Kyle Loudon

Program Folder - Purchase from the instructor (Sec 01: blue)
 

Useful
links
Textbook Website WROX website
Old Textbook Object Oriented Prog in C++ by Johnsonbaugh and Kalin
Learn Cpp Free website with tutorials on C++
UMLet Free software for drawing UML diagrams
UMLet OnLine Free online software for drawing UML diagrams
UML Tutorial UML Resource Page (link to tutorials)
UML Tutorial UML Tutorial - Washington State
UML Tutorial UML Tutorial - Tutorialspoint
Makefile Tutorial Makefile Tutorial - TutorialsPoint
Makefile Tutorial Makefile Tutorial - Opus Software
Makefile Tutorial Makefile Tutorial - Mrbook's Stuff
Grading Your grade is based on 
Exams 20 %
Final Exam 15 %
Quizzes/Labs 15 %
Programs 50 %
Programming
assignments
Style Guidelines Assignment Guidelines
Program Guidelines
Templates Algorithm Template
Test Plan Template
Work Log and Summary Template
Related documents

Submit Directions

GAME

Dice UML
GameSpace UML
RankRules UML

 

Weapon UML
Hierarchy
P3 PlayerClass
P3 Derived Classes

p3 UML file
Program 1
Design  Implementation Tests
Program 2
Design  Implementation Tests
Program 3
Design  Program 3 Tests
Program 4
  Program 4  
Program 5
     
Course
Outline
The schedule is outlined below.  This may change as the semester progresses and I will update you on these modifications in class.
 
 

 

In Class Activities

Out of Class Assignments

Week 1
(Jan 23-29)

  • Introduction to the course
  • Review of CSCI230
  • Intro to OOP
  • Lab 1 - Design
  • Read course documents:
    • General Info, Guidelines, Game
  • Ch1-Crash Course in C++
  • Intro to OOP
  • C++ Features
  • Review CSCI230 topics

Week 2
(Jan 30-Feb 5)

  • Lab 1 - UML
  • Review of CSCI230
  • Class constructors/destr
  • Cstrings, OOD, UML, Test plan
  • Ch2-Designing for C++
  • Ch3-Designing with Objects
  • Program 1 - Design

Week 3
(Feb 6 - 12)

  • Ch4-Designing for Reuse
  • Ch5-Coding with Style
  • Classes & Objects
  • Program 1 - Implementation

Week 4
(Feb 13 - 19)

  • Ch6-Gaining Prof w/ Classes
  • Program 1 - Implementation
  • Program 1 - Tests

Week 5
(Feb 20 - 26)

  • Ch7-Mastering Classes
  • Program 1 - folder due
  • Program 2 - Design
  • Study for Exam 1

Week 6
(Feb 27-Mar 5)

  • STL - pairs, maps and iterators
  • Exam 1 (March 3)
  • Vectors - STL
  • Pairs & maps- STL
  • Program 2 - Design due
  • Study for exam 1 - Chapter 1-6

Week 7
(Mar 6 - 12)

  • Program 2 - Implementation
  • STL

Week 8
(Mar 20 - 26)

  • Program 2 - folder due
  • Ch8-Discovering Inheritance
  • Inheritance
  • Program 3 - Design

Week 9
(Mar 27-Apr 2)

Week 10
(Apr 3 - 9)

  • Handle Class
  • Ch9-Quirks and Oddities
  • Program 3 - Implementation

Week 11
(Apr 10 - 16)

  • Program 3 - Implementation
  • Study for Exam 2

Week 12
(Apr 17 - 23)

  • Program 4 - Implementation
  • Hierarchy design and test plan

Week 13
(Apr 24 - 30)

  • STL
  • Ch10-Handling Errors
  • Ch11-Delving into the STL
  • Program 5 - Design

Week 14
(May 1 - 7)

  • Templating
  • Program 5 - Implementation
  • Ch12-Containers and Iterators
  • Ch13-Mastering STL Algorithms

Exam Week

Final: May 10 (Ross 136)
Section 1 - 12:30 -2:30


D2L We will be using D2L (Desire to Learn) this semester for this course.  You can connect to this learning management system by signing on to the MyEdinboro portal (available from EUP homepage).  

If you have any technical difficulties with D2L or the MyEdinboro portal please contact Edinboro's Technology and Communication help desk (814)732-2111 
 

last updated May 7, 2017