Skip to content

Latest commit

 

History

History
50 lines (35 loc) · 2.46 KB

File metadata and controls

50 lines (35 loc) · 2.46 KB

Study Guide for MOB 2.4 Final Assessment

Overview: Your final exam will focus on the learning outcomes for this course. Review each outcome thoroughly and ask questions if you are unclear about the outcome or your level of understanding.

Final Exam Format: Written

Outcome: Analyze and apply different creational, behavioral and structural patterns.

  • Ways we learned about this in the course

    • The first 4 classes covered design patterns, learning how they work and when are they best suited for certain problems.
  • Ways you can demonstrate your skill / knowledge level of this outcome

    • You can identify the pattern based on their descriptions or given a code snippet.
    • You can give accurate proposals to when to use patterns based on a scenario description.
    • You can diagram patterns to explain their components and how they work.
    • Given two patterns, you are able to explain how they are similar and different.

Outcome: Implement MVVM, Coordinators as architectural patterns.

  • Ways we learned about this in the course

    • Classes 5 and 6 covered MVVM and Coordinators.
    • We worked with some sample projects to learn how they worked,
  • Ways you can demonstrate your skill / knowledge level of this outcome

    • Explain how both work, their benefits, pitfalls, they problem they solve.
    • Diagram MVVM with their components and responsibilities for each.

Outcome: Use functional programming in Swift.

  • Ways we learned about this in the course

    • Classes 7 and 8 covered functional programming.
  • Ways you can demonstrate your skill / knowledge level of this outcome

    • Define functors, monads and applicatives.
    • Know the difference between imperative and decalrative programming.
    • Demonstrate how some HOF work (expected outputs)

Outcome: Explain the main components in Reactive programming and implement solutions in common scenarios

  • Ways we learned about this in the course

    • Last three classes were an introduction to Combine
    • We practiced with marble diagrams.
    • Studied several operators and 2 sample projects
  • Ways you can demonstrate your skill / knowledge level of this outcome

    • Identify the building blocks of Combine and how they work in a subscription
    • Be able to show the results of a marble diagram or a code snippet with operators
    • Distinguish between the different types of subscribers/publishers covered in class
    • Explain scenarios that are suitable to be implemented with Combine