Object-Oriented Programming
Understand Basics of Object-Oriented Programming
Exploration
Read chapter 3 of A First Course on Data Structures in Python Overview objects in ds2
package of donsheehy/datastructures
Activities
Monday and Wednesday: Object-oriented programming - Review the goals of object-oriented programming
- Review the principles of object-oriented programming
- Abstraction
- Inheritance
- Encapsulation
- Polymorphism
- Examine source code segments to illustrate trade-offs
Thursday: Continue algorithm engineering project Friday: Continue the algorithm engineering project
Project
Goal
To build and use a Python program, called containmentchecking
, that runs benchmarks to measure the performance of in
for list
, tuple
, and set
, thereby enabling software engineers to pick the fastest collection for their program.
Steps
- Use Containment Checking as your template repository
- Install the project’s dependencies using
devenv
- Follow the instructions to complete the project:
- Week 1: Implement all of the modules in
containmentchecking
- Week 2: Design and conduct experiments and document experimental results
- Week 1: Implement all of the modules in
- Schedule office hours if you have questions