I will post lecture topics, reading assignments, and problem sets here. I'll revise the table after each lecture to reflect what really happened.
| Week | Date | Topic | Material | Reading |
|---|---|---|---|---|
| 1 | 8/24 | Lec 1: Introduction; brief history of programming languages | Evolution of programming languages | Syllabus |
| 8/25 | No discussion | |||
| 8/26 | Lec 2: Overview of software engineering; basics of C#; simple GUIs in C# | Overview of software engineering See TipCalculator in repository | Michaelis, Chapters 1-4 | |
| 2 | 8/31 | Lec 3: Version control | Subversion Red Book. Skim for the ideas behind Subversion. | |
| 9/1 | Dis 1: Setting up and using an SVN repository Problem Set One | Lab material | ||
| 9/2 | Lec 4: Implementing classes in C# | See Poly V09-02-2010 in repository | Michaelis, Chapter 5 | |
| 3 | 9/7 | Lec 5: Unit Testing | Unit Testing | Reading |
| 9/8 | Dis 2: Visual Studio Unit Testing Tools Problem Set Two | Lab material | ||
| 9/9 | Lec 6: Inheritance in C# | See Inherit in repository | Michaelis, Chapters 6 | |
| 4 | 9/14 | Lec 7: Debugging | Reading | |
| 9/15 | Dis 3: Debugging with Visual Studio Problem Set Three | Lab material | ||
| 9/16 | Lec 8: Interfaces | See Interface in repository | Michaelis, Chapter 7 and (parts of) 14 | |
| 5 | 9/21 | Lec 9: Discussion of PS 3; MVC architecture; testing GUI interfaces | ||
| 9/22 | Dis 4: PS 3 Help | Lab material | ||
| 9/23 | Lec 10: Enumerators, DLLs | See Enumerators in repository | ||
| 6 | 9/28 | Lec 11: Solution to PS 3 | ||
| 9/29 | Dis 5: Testing GUIs Problem Set Four | Lab material | ||
| 9/30 | Lec 12: Delegates and Events | See Delegates in repository See SpreadsheetPanel in repository | Michaelis, Chapters 12 and 13 | |
| 7 | 10/5 | Lec 13: Introduction to threads | See Threads in repository | |
| 10/6 | Dis 6: Debugging Threads Problem Set Five (Initial Specs) dictionary.txt | Lab material | ||
| 10/7 | Lec 14: Threads and Sockets | See ClientServer in repository | ||
| 10/12 | Fall Break | |||
| 10/13 | Fall Break | |||
| 10/14 | Fall Break | |||
| 8 | 10/19 | Lec 15: Asynchronous sockets | See NumberServer in repository | |
| 10/20 | Dis 6: Boggle Assignment | Lab material | ||
| 10/21 | Lec 16: Asynchronous sockets | See NumberServer (version 1.1) in repository | ||
| 9 | 10/26 | Lec 17: Testing client/server applications | See NumberServer (version 1.2) in repository | |
| 10/27 | Dis 7: Boggle Assignment | Lab material | ||
| 10/28 | Class Canceled: Study for Midterm | Last Year's Midterm Midterm Topics | ||
| 10 | 11/2 | Midterm Exam | ||
| 10/27 | No lab section Problem Set Six | |||
| 10/28 | Lec 18: Pair programming; introduction to database programming | Pair Programming | ||
| 11 | 11/8 | Lec 19: Unit testing LineSockets; MySQL and SQL | See LineSocket (latest version) in repository for unit testing example | |
| 11/9 | Dis 8: Help session for PS 6 | |||
| 10/28 | Lec 20: SQL | See DB-LINQ in repository | Tutorial on SQL | |
| 12 | 11/16 | Lec 21: Database, LINQ, and Performance improvements | See DB-LINQ in repository Performance Improvement | Michaelis, Chapter 15 (first section) |
| 11/17 | Dis 9: Creating a MySQL database Problem Set Seven | Lab material | ||
| 11/18 | Lec 22: Intellectual Property | Pair Programming | ||
| 13 | 11/23 | Snow day | ||
| 11/24 | Dis 9: PS 7 Help | |||
| 11/25 | Thanksgiving | |||
| 14 | 11/30 | Lec 23: Team Dynamics; OO Patterns | Working in Teams See DesignPatterns in repository | Design Patterns in C# |
| 12/1 | Dis 9: PS 7 Help Problem Set Eight | |||
| 12/2 | Lec 24: OO Patterns; UML | See DesignPatterns in repository UML | UML Class Diagrams | |
| 15 | 12/7 | Lec 25: OO Patterns; Ethics | See DesignPatterns in repository Ethics | |
| 12/8 | Dis 10: Help session | |||
| 12/9 | Lec 26: Final Review | Review Slides | ||