CSCE 121 (2020 Spring): Introduction to Program Design and Concepts
Instructor: Yulin Zhang
Office:EABC-107B (Online via Zoom)
Email:yulinzhang(at)tamu.edu
Office hours:TR 11-12 or by appointment
Webpage:http://people.tamu.edu/~yulinzhang
Teaching Assistant and Peer Teachers
Teaching Assitant:Qinbo Li
Office:HRBB 339 (Online via Zoom)
Email:lee(at)tamu.edu
Office hours:by appointment
Peer Teachers::https://engineering.tamu.edu/cse/academics/peer-teachers/current-peer-teachers.html
Homework and Labwork
 See course on e-campus.
 Check out lectures about shell, editor, git, etc. from "missing-semester".
Zoom Lectures, Labs and Office Hour*
  • Lectures Session: Zoom Meeting
  • Lab Session: Zoom Meeting
  • Yulin's Office Hour: Zoom Meeting
Deadlines
  • Tuesdays: Pre-homework quiz
  • Fridays: Zybook Challenge or Participation
  • Sundays: Homework
  • Feb 21 (in-class): Exam 1
  • April 3rd: Exam 2
Please mark the dates in your calendar.
Tentative Schedule
Week Date Lecture Topic
1a Jan-13 Syllabus
code/notes
1b Jan-15 Compilation and Hello World
code/notes
1c Jan-17 Things you already know, but now in C++
code/notes
2b Jan-22 Problem solving process, testing
code/notes
2c Jan-24 Functions, header file, number peeling
code/notes
3a Jan-27 Integral Data Type and limitations
code/notes
3b Jan-29 Floating Point
code/notes
3c Jan-31 Type Conversion, Compound Data Type, and Scope
code/notes
4a Feb-3 Switch, Object Orienct Design (Encapsulation, Inheritance, Polymorphism)
code/notes
4b Feb-5 String, Stream state, File IO
code/notes
4c Feb-7 Unnecessary censorship, Exceptions
Instructor: Philip C. Ritchey
code/notes
5a Feb-10 Memory Diagram, Pointer, Reference and Array
Instructor: J. Michael Moore
code/notes
5b Feb-12 Array and Linear search
Instructor: J. Michael Moore
code/notes
5c Feb-14 () Array manipulation
code/notes
6a Feb-17 Exam review
code/notes
6b Feb-19 Exam review, 2d array
code/notes
6c Feb-21 Exam 1
7a Feb-24 Array manipulation, 2d array, pointers
code/notes
7b Feb-26 Dynamic Memory: allocate, deallocate, memory leaks
code/notes
7c Feb-28 Dynamic Memory: copy and resizing arrays
code/notes
8a Mar-2 Function: stack frame, declaration & definition Review, pass by value
code/notes
8b Mar-4 Function: pass by reference, throwing exceptions
code/notes
8c Mar-6 Binary search, function parametric polymorphism
code/notes
9 Mar-9 to Mar-13 Spring break
11 Mar-23 to Mar-27 Recursion
meeting notes
12 Mar-30 to Apr-3 Object oriented programming
meeting notes
13 Apr-06 to Apr-10 Object oriented programming: rule of three
meeting notes
14 Apr-13 to Apr-17 LinkedList
meeting notes
15 Apr-20 to Apr-24 OOP: Inheritance, Polymorphism
meeting notes
Interesting reads: Memory layout with virtual function
16 Apr-27 to May-1 Exam review
meeting notes