General Code expectations Resources Exam 1 (Weeks 1-5) Review OOP Languages / IDEs / Class and Object Creation C++ (g++, Visual Studio) C# Intro (Visual Studio) Class Creation & Object Creation OOP Intro Need for Software Architecture OOD - Intro Encapsulation & Information Hiding Abstraction & Generalization Association, Aggregation & Composition Constructors & Destructors Uses of const Uses of static Uses of final Object Copying Decoupling Namespaces/Packages XML XML as related to OOP XML Serialization Operator Overloading Quizzes C++ Review & Intro to class (Chapters 3.*, 6.14-6.19, 8.1 - 8.6, 23.4)  Due Friday Week 2 Classes (Chapter 9) Due Friday Week 3 Operator Overloading (Chapter 10) Due Friday Week 4 Exam 2 (Weeks 6-10) Inheritance Subtype Polymorphism v-table in c++ Concrete Classes, Interfaces & Abstract Classes Mutable vs. Immutable Classes Exception Handling Templates & Generics Enumerations Quizzes Inheritance (Chapter 11)  Due Friday Week 6 Polymorphism(Chapter 12) Due Friday Week 7 Exception Handling(Chapter 17) Due Week 8 Templates (Chapter 18) Due Week 9 Exam 3 (Weeks 11-15) STL Garbage Collection Reference Counting Smart Pointers Design Patterns Patterns Lazy Loading Dependency Injection Common OOP Architectures MVC SOA n-Tier Front Controller Publish-Subscribe Lambda Expressions LINQ Quizzes STL( Chapter 15)  Due Friday Week 11