C C T B H P N

Lecture #15 - Midterm Examination Review

Oh oh!

Midterm on Thursday

Web Resources:

CppCon - 2014, Going Native 2013
Herb Sutter's Blog, Herb Sutter on C++11, Herb Sutter keynote - Going Native 2012
Scott Meyer's Blog, S.M. on thread suspension, S.M.: C++11 Sampler
Stroustrup's Home Page
Code Project, Boost Library
Excellent C++ Q&A, Excellent reference - CppReference.com, CPlusPlus.com, C++ TechLinks

Content:

This lecture will provide a review for the CSE687 Midterm Examination.
  1. The Syllabus describes topics to be covered, reading material for you to digest before coming to class, and due dates for the assigned projects.
  2. Project Help:

  3. Carry over from threads:

    Won't be on exam
  4. You may bring in one page of notes, written on both sides, in a small font.
    You may bring in a magnifying glass to see those small fonts.
  5. Instructor's Solutions for Last Semester's Midterm Exams:

  6. What's going to be on the this year's Midterm Exam?

    You need to know the difference between syntax and semantics.
    You need to know the difference between declaration and definition. Questions that ask you to produce or analyze C++ code. Questions about the design of this year's projects: Classes: composition, inheritance, initialization
    composition demosinheritance demos
    Class relationships - Definitions, Class relationships - class and object diagrams
    Class relationships demo Example Package Diagram, Example Class Diagram virtual function pointer tables Dark Corners - hiding, defects in overloading & overriding
    temporaries Value Types - move, copy and assignment operations, default operations
    CompoundObjects Templates, function and class templates, Specialization, other template techniques, Template policies and traits Callable Objects - Simple Demo, Callable Objects Threads Functors and Function Pointers, Lambdas STL Containers and iterators
    Make sure you look at std::vector, std::deque, std::map, and std::unordered_map. C++11 constructs, e.g., smart pointers, compiler generated functions, callable functions, aliases, range-based for loop Principles Summary, Principles: LSP, OCP, DIP, ISP Programming to InterfacesWidget Factory demo
    Classic Factory structure, Classic Factory creating polymorphic objects
    Illustrates how to create instances of a polymorphic type with clients knowing only the base class and factory interfaces. Object Factory Structure, Object Factory Project
    This project implements a factory that allows clients to use derived classes but only bind to their abstractions. It also demonstrates the use of products with multiple interfaces. Programming to Interfaces Presentation
    Discusses interfaces, layers, factories, and breaking design, compile, and static link dependencies. DllDemo-Protocol Project
    Demonstrates how Dynamic Link Libraries are loaded implicitly and explicitly. I won't ask for details, but you should know how the demo works.
    RTTI, pptx, Exceptions, pptx, Casts
  7. What won't be on the exams - we haven't discussed these yet:

CST strip