Home
Important Dates Grading Lectures Optional Readings
Exercises Group Assignments Individual Assignments
Exam Schedule
Videos Slides
College of Engineering Aeronautics and Astronautics Agricultural and Biological Engineering Biomedical Engineering Chemical Engineering Civil Engineering Construction Engineering and Management Electrical and Computer Engineering Engineering Education Engineering Professional Education Environmental and Ecological Engineering Industrial Engineering Materials Engineering Mechanical Engineering Nuclear Engineering
EPICS (Engineering Projects In Community Service) First-Year Engineering Program First-Year Engineering Honors Program Global Engineering Program Minority Engineering Program Professional Practice (Co-Op) Program Women in Engineering Program
College Administration Schools Programs All Groups All People ECN Webmail
Purdue Home

Lecture Videos

Errata

Lecture Slides Reading Code Video
1 Slides 2-3.3

Code

Object and Class (5:43)

Inheritance and Polymorphism (10:45)

Development Environment (17:32)

Lab Exercise 1 (14:02)

2 Slides 3.10-3.12

Code

Program Structure (14:09)

Class Examples (4:32)

Encapsulation and Polymorphism (16:12)

Constructor and Destructor (17:34)

3 Slides 3.13-3.16

Code


Version Control (8:28)

Instantiation (17:31)

Submission Procedure (8:23)

Inheritance (6:52)

Lab Exercise 2 (8:59)

 4 Slides 17.8-17.12 Code

User Interface (14:22)

Qt Signals and Slots (17:45)

Java Events and Handler (9:47)

Array (11:27)

5 Slides 5-5.2 Code

Container (21:57)

Collision Detection (16:57)

New Container in C++ (12:24)

6 Slides 6-6.9 Code

Open and Save File (21:36)

Definition, Declaration, and Initialization (17:23)

Lab Exercise 3 (15:57)

7 Slides 7-8.5 Code

Reference (4:38)

Parameter Passing (8:23)

Copy Constructor (14:41)

Parameter Passing 2 (6:00)

Overload Resolution (15:01)

8 Slides 12-12.11 Code

Operator Overloading (24:10)

Small Int and Conversion (24:30)
Exam 1  (outcomes 3,4)
9 Slides 10-10.7 Code

Lab Exercise 4 (1:24)

Programming Assignment 03 (4:47)

Exception Handling in C++ (16:22)

Exception Handling in Java (10:18)

Static Member in C++ (9:10)
10 Slides  11-11.14 Code

Static Member in Java (9:28)

Game Programming (6:28)

Full Screen Game (28:18)

Lab Exercise 5 (7:38)

11 Slides  14-14.6  -

Double Buffering (20:46)

Sprite (4:13)

Unified Modeling Language (UML) (22:19)

12 Slides  15-15.18 Code

Inheritance (21:51)

Virtual Function (11:32)

Private Inheritance (9:16)

Java Final (3:36)

Lab Exercise 6 (5:34)

13 Slides  16-16.7 Code

Java Key Input (15:09)

Java Mouse Input (6:59)

Multiple Inheritance in C++ (17:40)

Qt Layouts (9:33)

14 Slides - Code

Sound (7:50)

Performance Profiling (17:40)

C++ Profiling (3:52)

Performance Improvement (18:04)

Exam 2  (outcomes 5,6)
15 Slides  18-18.3 Code

Parallelism (14:43)

Thread (21:17)

Parallel Programs (14:47)

16 Slides  18.4-18.11 Code

Scheduling (18:40)

Synchronization (23:01)

Lab Exercise 9 (10:20)

17 Slides Code

Design Parallel Programs (19:31)

Deadlock (15:38)

Thread Performance (11:13)

Platform Game (5:43)

18 Slides 19-19.4  Code

Draw Game (6:08)

Network Client (17:32)

Network Server (20:38)

Test Coverage (6:34)

19 Slides - -

Software Test I (12:34)

Software Test II (13:06)

Automatic Testing (9:52)

3D Graphics (12:05)

20 Slides - Code

Multi-Player Game using Network (16:01)

Game Client (15:26)

Game Server (8:10)

Improvement (5:10)

Java Remote Method Invocation (7:41)

 21 Slides - Code

Brief History of C++ (20:15)

Brief History of Java (10:11)

RMI Example (9:19)

Ray Tracing (10:19)
22 Slides - -

Reuse Threads (12:23)

Ray Tracer (8:43)

Problem with Threads (6:15)

Exam 3  (outcomes 7,8)