CPSC 1020-300 Computer Science II
Fall 2020

10:10-11:00 MWF McAdams 114

Schedule

DateL#Topic
Wed. Jan.08 01 Introduction; syllabus; office hours, etc.
Fri. Jan.10 02
  • syllabus
  • areas of memory
  • types of variables and scope
Mon. Jan.13 03
  • C review
  • (secions 5.8-5.11) loops
  • conditional statements
Wed. Jan.15 04
  • (sections 6.1-6.7; 6.10-6.11) functions
  • (sections 10.1-10.7, 10.9-10.0) pointers
Fri. Jan.17 05
  • more pointers
  • pass-by-reference
  • dynamic memory allocation (malloc(), calloc())
Mon. Jan.20 06 holiday
Wed. Jan.22 07
  • function pointers
Fri. Jan.24 08
  • (section 7.12) structs
  • (section 8.8) typedef
Mon. Jan.27 09
  • (section 17.1-17.4) linked lists
Wed. Jan.29 10
  • (section 17.5-17.6) linked lists
Fri. Jan.31 11
  • finish linked lists
  • debugging
  • makefiles
Mon. Feb.03 12
  • (sections 2.2, 3.1) intro to C++; extensions to C; data types; cout; cin
  • (sections 3.3) typecasting
  • (sections 3.7) formatted output
Wed. Feb.05 13
  • (sections 2.1, 3.1) intro to C++; class; namespace
  • (sections 5.12) file I/O
  • (sections 6.13) reference parameters
Fri. Feb.07 14
  • finish intro to C++
  • review for Exam 1
Mon. Feb.10 15
  • Exam 1
Wed. Feb.12 16
  • C++ classes
Fri. Sep.14 17
  • C++ classes
  • (sections 7.1-7.1) abstract data types
  • (sections 7.3-7.5) design by contract; UML diagrams; objects; classes (in-line vs. regular method implementation); constructor; destructors
Mon. Feb.17 18
  • more constructors: parameterized constructor with default value; constructor with in-class
  • (sections 7.6-7.7) initialization; constructors with initialization lists; dynamic memory allocation in C++; new and delete
Wed. Feb.19 19
  • (rest of chapter 7) more C++ classes; passing objects to functions; constant reference parameters; returning an object from a function; copy constructors; object composition; C++ structures
Fri. Feb.21 20
  • (finishing up chapter 7) code examples / exercises
Mon. Feb.24 21
  • (chp 8) arrays and vectors
  • (sections 8.1-8.4) review of arrays
  • (section 8.5) range-based for loop
Wed. Feb.26 22 Assignment 1 due
  • (section 8.6-8.7, 8.9-8.11) review of using arrays; C++11 array class and other containers
Fri. Feb.28 23
  • (section 8.12) vector class
  • (section 8.13) arrays and vectors of objects
Mon. Mar.02 24
  • (chapter 10) C++ pointers
  • (section 10.5) initializing pointers in C++11
  • (section 10.3) relationship between arrays and pointers
  • (section 10.6) comparing pointers
  • (section 10.8) pointers to constants & constant pointers
  • (section 10.9) revisiting dynamic memory allocation, new and delete
  • (section 10.10) dangling pointers; memory leaks; returning pointers from functions
  • (section 10.13) smart pointers
Wed. Mar.04 25
  • (more chapter 10)
Fri. Mar.06 26
  • (chapter 12) strings
Mon. Mar.09 27
  • review of pointers and strings code or exercise
Wed. Mar.11 28
  • (section 11.1) the this pointer
  • (section 11.2) static members
  • (section 11.3) friend functions
Fri. Mar.13 29
  • (section 11.4) member-wise assignment
  • (section 11.5) copy constructors
  • (section 11.6) overloaded operators
Mon. Mar.16 -- Spring Break
Wed. Mar.18 -- Spring Break
Fri. Mar.20 -- Spring Break
Mon. Mar.23 30
  • (section 11.7) references and move constructor/assignment
Wed. Mar.25 31
zoom
  • (sections 11.9) type conversion operators
  • (sections 11.10) convert constructors
Fri. Mar.27 32
zoom
  • review chapter 11 code / exercise; review for Exam 2
Mon. Mar.30 33
zoom
  • Exam 2: due 13:10 to be submitted via handin

    WARNING: LATE SUBMISSION WILL NOT BE ACCEPTED

Wed. Apr.01 34
zoom
  • go over Exam 2
  • (sections 11.11-11.12) aggregation, composition, and inheritance
  • go over assignment #2
Fri. Apr.03 35
zoom
Assignment 2 due
  • (chpater 11) finish up, inheritance examples
Mon. Apr.06 36
zoom
  • exercise with inheritance
Wed. Apr.08 37
zoom
  • (sections 15.1-15.2) polymorphism
Fri. Apr.10 38
zoom
  • exercise with polymorphism
Mon. Apr.13 39 NO CLASS: EF-3 TORNADO
Wed. Apr.15 40
zoom
  • (sections 15.3-15.4) finish up polymorphism; abstract base classes
  • finish up abstract base classes with code examples or exercise
Fri. Apr.17 41
zoom
  • (chapter 15) finish up, code examples / exercises
  • go over assignment #2 again, prep for assignment #3
Mon. Apr.20 42 Assignment 3 due
  • Quiz 2: CANVAS: AVAILABLE @ 10:10, DUE 11:00
Wed. Apr.22 43
zoom
  • review
  • go over assignment #3 (incl. pointer arithemtic)
  • recursion
Fri. Apr.24 44
zoom
  • review for Final Exam (no exemptions)
Tue. Apr.28 45 FINAL EXAM 3:00pm-5:30pm