Exam 3 Study Guide

1 Study Tips

Multiple choice/fill in
  • Practice homework questions
  • Practice Clicker questions
  • Review this study guide for guidance
Coding question
  • Redo parts of the related MPs with no outside help
  • On the exam, use comments to map out your plan, implement each comment one-by-one.
  • On the exam, don’t panic if your code doesn’t work right away. Focus on getting individual parts of your logic correct for partial credit.

2 Lectures

Networks 0b01
  • Clickers: Q3 Q5 Q8 Q9 Q10
  • Be able to define what a client-server design is
  • Be able to define what the internet is
  • Be able to describe the layers of an internet packet (IP -> TCP or UDP -> HTTP)
  • Be able to describe the pros and cons of UDP and TCP
HTTP + Python + aiohttp Example
  • Clickers: Q2 Q3
  • Be able to write python code given the pydoc documentation for functions and classes
  • Be able to write an aiohttp endpoint
  • List comprehension : No need to have mastered beyond being able to read examples and figure out what they are doing
  • Function decorators : No need to have mastered beyong using it for aiohttp
  • Async : No need to have mastered beyond using it for aiohttp
REST API
  • Be able to define what an API is
  • Be able to degine what a REST API is
  • Be able to recognize common HTTP Methods (GET, POST, PUT, DELETE)
  • Be able to read and comprehend basic curl commands
Authentication
  • Clickers: Q3 Q4 Q5 Q6
  • Strategies for storing a password in a secure way (hashing, salt, pepper). Their definitions and what they prevent.
  • The difference between hashing and encryption
Security
  • Clickers: 2, 4, 5, 6, 7, 8
  • Definitions on slide 15
  • File permissions (see HW)

3 Homework

HW6
  • The specific topics (decorators) won’t be tested but you should be able to write python code.
HW7
  • Be able to answer all questions with no outside help besides pydocs when relevant.
HW8
  • Be able to answer all questions with no outside help besides pydocs when relevant.

4 MP

MP7 aiohttp Lite
  • Be able to complete with no outside help besides the pydocs and specifications.
MP8 Weather-based Image Filter
  • Be able to complete with no outside help besides the pydocs and specifications.
MP9 Maze
  • Be able to complete with no outside help besides the pydocs and specifications. You will not be tested on being able to generate dynamic mazes.