Exam Synopsis (Template)
Below are a few examples of how you could write your synopsis. These are all meant to serve as inspiration. You should craft one in your own words; it doesn’t necessarily have to focus on the exact topics I’ve written about, but can encompass anything that aligns with the overall topics.
I have created two examples for each topic. The first one delves into advanced Python topics, while the second one is more straightforward, covering less complex areas of the material we discussed.
The choice is entirely yours. Both options are acceptable, but tackling the more complex topics could potentially earn you a higher grade on the exam.
1. Pythonic OOP and encapsulation
Version 1
In my presentation, I will focus on encapsulation and how it is achieved through the use of properties. I will provide some practical examples, starting with public variables and demonstrating how to get and set them. Following this, I will illustrate how we can incorporate properties into our classes to achieve encapsulation without making changes to the existing user code. Suggested topics we could discuss following my presentation include the “property built-in function” and an exploration of its internal workings.
Version 2
During my presentation, I will introduce the fundamental concepts of Object-Oriented Programming (OOP) in Python. I will begin by demonstrating how to create a class, detailing how to add attributes and methods to this class. Following this, I will show how to instantiate an object from this class, explaining how to get and set its attributes. Furthermore, I will illustrate how to add instance variables to the object after its creation, specifically during runtime.
2. Build in functions
Version 1
A list of Python’s built-in functions can be found here: Python Built-in Functions. In my presentation, I will demonstrate how to utilize a selection of these functions, emphasizing their ease of use and how they enhance user interaction with the language. Furthermore, I will demonstrate how to integrate these uniform interfaces with one’s own objects using data model methods.
Version 2
A list of Python’s built-in functions can be found here: Python Built-in Functions. In my presentation, I will demonstrate how to utilize a selection of these functions, emphasizing their ease of use and how they enhance user interaction with the language.
3. Functions & Decorators
Version 1
In my presentation, I will demonstrate step-by-step how a decorator operates. Additionally, I will show how the built-in range() function is actually an object created from a class, and I will illustrate how a similar approach can be implemented within one’s own objects.
Version 2
In my presentation, I will focus on the use of decorators in Python. I will demonstrate how we can easily add extra functionality to existing code. Furthermore, I will explain the concept that functions in Python are first-class citizens. I will demonstrate how to create inner functions, and how to access and utilize them effectively.