Final Exam
- Monday June 8 11:30AM to 1:45PM (2.25 hours)
- You must complete exam without help from anyone!
- You must not share any of the exam with anyone!
- Coverage includes all work through week 10
- Total of 70 points (35% of the class grade)
- Multiple choice
- Covers concepts and definitions
- Choose correct example or snippet of code
- Code tracing and prediction
- Trace code that uses class definitions, inheritance
- Trace simple recursive calls
- Trace output from an iterator
- Code writing
- Multiple choice
Review of Major Concepts
The exam covers chapters 7 through 11, except chapter 9. Text content that was not addressed in class will not be emphasized on the exam.
General concepts and competencies
- Using classes, creating objects and calling instance methods
- Defining classes, contructors, and methods
- Common specially-named methods: __init__, __str__, __eq__
- Using assert to test code
- Defining and understanding iterators for a class
- Using lists, dictionaries and objects to represent composite (structured) data
- Composition: defining a class (e.g. MovieList) composed of instance variables that consist of objects (Movie objects)
- Sorting and searching: efficiency, using key function for Python sort
- Web development: html, css, JS (know ideas but not code)
- Using regular expressions
General knowlege of the topics in these areas is expected. The exam will typically address these topics with multiple choice.
Study Strategies
- Review midterm exam and quizzes
- Review assignments and your summary statements
- Develop a Widget class and a class that is composed of a list/dictionary of widgets.
- Write a demo program for your classes; trace and predict demo programs written by others