General https://www.harding.edu/dsteil/345/345Syllabus.pdf https://cs.harding.edu/easel/cgi-bin/login Code expectations Resources http://www.codeproject.com/Articles/22769/Introduction-to-Object-Oriented-Programming-Concep Exam 1 (Weeks 1-5) Review https://www.harding.edu/dsteil/345/Assignments/Maze.pdf https://www.harding.edu/dsteil/345/examples/arrowkeyPractice.cpp OOP Languages / IDEs / Class and Object Creation C++ (g++, Visual Studio) C# Intro (Visual Studio) Class Creation & Object Creation https://netbeans.org/downloads/ https://www.jetbrains.com/pycharm/ https://www.harding.edu/dsteil/345/assignments/flowerboxGenerator.pdf https://www.harding.edu/dsteil/345/assignments/flowerboxGenerator.pdf https://www.harding.edu/dsteil/345/Assignments/Maze.pdf https://www.harding.edu/dsteil/345/Assignments/Maze.pdf 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 https://www.harding.edu/dsteil/345/notes/Design 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