ADVANCED OBJECT-ORIENTED PROGRAMMING PROJECTS
Maria Lymperaiou is a software engineer at JP Morgan Chase Bank in the UK. She has been researcher at the European Organization for Nuclear Research (CERN) in Switzerland and holds a ME Electrical and Computer Engineering.
This practice is made up of 3 projects focused on OOP. The main goal of these projects is to practice OOP and get confident about this programming approach. The projects are as follows:
1) Commuting options: create a program to help a student decide what is the best choice to go to the university. You are given an excel file with all the elements (weather, temperature, cost, etc) necessary to make a decision about the most suitable mean of transport (car, bus, bike, etc) every day of the week. Based on that input data and with object oriented programming you will have to show the best option for each day of the week.
2) Stocks prices: among a list of stock values you are requested to find local maximum and minimum prices
based on several conditions and their positions. In addition to classes creation and methods definition, there is an important workload of lists.
3) Visitors capacity management: create a program to limit number of clients inside a shop, keep the social distancing and manage their waiting time outside. You will have to design three classes each one with different methods and attributes. Methods include a wide range of functions such as distances calculation with coordinates, comparisons through conditional statements, iterations through “for” loops and so on.
All projects have a guidelines section where the challenge is broken down in small exercises (more than 10). This way, you finish the challenge step by step solving problems about classes, methods, objects and other common elements of the OOP paradigm.
DOWNLOAD / CONTENT
You will receive an email with a protected ZIP and a password to access the content. If you are a registered user, the download is always available on your account.
The downloadable zip is made up of three folders with one project each one:
1) One PDF with the project description. It includes step by step guidance and hints to help you complete the tasks.
2) A Jupyter Notebook with the solutions. You will find not only the source code but also detailed explanations about how the code works. Moreover, the code provided in the solutions has been written by a senior developer so it is clean and easy to understand. This is key to learn the right programming practices and principles.
IMPORTANT: to see the solutions (Notebook) you need to have Jupyter or the ANACONDA package installed on your machine. If you do not have it, you may download it here. It is free.
WHAT YOU WILL PRACTICE
– Creating Classes.
– Writing and calling methods.
– Define functions with “for/while” loops and conditional statements (if/else)
– Dictionaries and lists.
– Inheritance: use the __init__()
– Basic Pandas to read data from an Excel file.
Knowledge of object oriented programming is required to be able to finish the challenges. It is recommended to have attended an OOP introduction course and be familiar with concepts like classes, methods, objects, encapsulation, inheritance, instances etc.
It is also recommended (although not mandatory) to be familiar with the Pandas library in order to read the input data when it is stored in a spreadsheet.
1 review for Advanced OOP Practice Projects
Only logged in customers who have purchased this product may leave a review.
mentol (verified owner) –
Object Oriented Programming challenges are hard to find so I decided to try this site.
The projects are worthwile and the solutions are clear and broken down in a very approachable manner.
A useful way to refresh oop concepts.