I am not teaching any courses this year. However, you can download my course
notes from my previous courses.
Comp-361 : Systems Development Project – Winter 2009
Note that there are very few slides for this course, as this was a project course.
- Course Overview Lecture 1
- Naval Battle! Lecture 2
- Game Design and Tools Lecture 3
- Object Oriented Programming Lecture 4
- Game Programming Lecture 5
- Source Control Lecture 6
- Network Programming Lecture 7
- User Interface Design Lecture 8
- Testing Strategies Lecture 9
Comp-304 : Object-Oriented Design – Winter 2007
- Software Processes – Lecture 1, Lecture 2
- Unit Testing in Python – Lecture 3, Lecture 4
- What does it mean to be Object-Oriented ? – Lecture 5, Lecture 6, Lecture 7
- UML
- What is? – Lecture 8
- Class Diagrams – Lecture 9, Lecture 10
- Interaction Diagrams – Lecture 11, Lecture 12
- Behavior Diagrams – Lecture 13, Lecture 14, Lecture 15
- Quality of Design – Lecture 16, Lecture 17
- Design Patterns
- Singleton – Lecture 21
- Command – Lecture 22
- Adapter – Lecture 23, Lecture 24
- Composite – Lecture 25
- Observer / Template Method – Lecture 26, Lecture 27, Lecture 28
- Visitor – Lecture 29, Lecture 30
- Factory – Lecture 31
- Final Review – Lecture 32
Comp-206 : Introduction to Software Systems – Fall 2006
- Class Introduction, Operating Systems – Lecture 1
- Client/Server, Process/Multi-Threading, File System and Permission – Lecture 2
- Directories, Redirection – Lecture 3, Lecture 4
- Environment, Unix Commands and Processes – Lecture 5
- Introduction to Python, Smtp Demo, TKInter Demo [py] – Lecture 6
- Grep/Regular Expressions, Shell Variables and Test Conditions – Lecture 7
- Shell If/For/While and Example Shell Scripts – Lecture 8
- Introduction to C, C versus Java – Lecture 9
- Basic C Syntax, Errors in C and printf – Lecture 10
- Structures, Enumerations, Pointers and Memory Allocation – Lecture 11
- Midterm info, Review – Lecture 12
- Data structures in C, Midterm review – Lecture 14
- String manipulations, Multiple source files, Preprocessor and Makefile – Lecture 15
- File I/O and Methods of storing data – Lecture 16
- Bugs, Debugging, Tools – Lecture 17
- Defensive Programming and Strategies – Lecture 18
- Fractals, C/Python Integration, C/Python API – Lecture 19, Lecture 20
- Source Control Software, Introduction to SVN – Lecture 21
- HTTP and HTML – Lecture 22, Lecture 23
- Dynamic Websites, Intro to PHP, Useful PHP func – Lecture 24
- Final Class – Lecture 25
Comp-303 : Programming Techniques – Winter 2004
- Course Syllabus, Decomposition and Abstraction – Lecture 1
- OO programming
- Short Introduction to UML, Requirements & Specification – Lecture 4
- Procedural Abstraction, Specification for procs, Partial vs Total procs – Lecture 5
- Data abstraction, Abstract Data Structure, IntSet and Poly – Lecture 6
- Exceptions, Checked vs Unchecked – Lecture 7
- Itteration Abstraction – Lecture 8
- Type Hierachie, Dispatching, Good use of interfaces – Lecture 9
- Polymorphic Abstraction, Sets, Comparators and Adders – Lecture 10
- How to use Threads, Thread vs Runnable, Synchronization – Lecture 11
- TCP/IP client/server application, Java Socket/ServerSocket, Serialization – Lecture 12
- Testing Strategies, Debugging Strategies, Review for Midterm – Lecture 13
- Blackbox testing, Glassbox testing, Debugging strategies – Lecture 14
- Requirements Analysis, Software Lifecycle, Dealing with Errors – Lecture 15
- What is design, Design Reviews, Top-down vs Bottom-Up – Lecture 16
- Design Patterns
- Singleton Pattern – Lecture 17
- Factory Pattern, Abstract Factory Pattern – Lecture 17
- Facade Pattern, Adapter Pattern – Lecture 18
- Flyweight Pattern, Project Submission and Interview – Lecture 19
- Chain of Responsibility Pattern – Lecture 20
- Command Pattern – Lecture 21
- Java Community Process (JCP), Java 1.5 – Lecture 22
- Review for Midterm – Lecture 23
Comp-573 : MicroComputers – Fall 2003
Note that there are very few slides for this course, as this was a project course.
- Course Introduction and COMP-273 review – Lectures
- Programming and Debugging Assembler under Linux – Lectures
- Architecture : Intel I32 x86 – Lectures
- Architecture : SPARC – Lectures
- Architecture : PowerPC – Lectures
- Architecture : Other (ARM and Intel I-64) – Lectures
- Midterm with Solution – Lectures