Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/smhussain5/atm-oop

Terminal ATM application using Python/PyCharm, OOP
https://github.com/smhussain5/atm-oop

object-oriented-programming pycharm python terminal-application

Last synced: 23 days ago
JSON representation

Terminal ATM application using Python/PyCharm, OOP

Awesome Lists containing this project

README

        

# AUTOMATIC TELLER MACHINE (ATM) PYTHON

![ATM Python GIF Demonstration](https://github.com/smhussain5/ATM-OOP/blob/main/ATM_OOP_PYTHON.gif?raw=true)

## Problem 🤔

Object-oriented programming (OOP) is a staple in programming and allows for benefits such as abstraction and code readability. The best way to practice OOP is to develop projects.

## Solution 💡

This terminal application utilizes OOP to simulate an ATM. Users can input one of several menu options that correlate to specific functions within the ATM class. Functions include depositing into/withdrawing from checking/savings account and transferring between accounts.

## Quick Start âš¡

If you have Docker installed, you can run this application on your own machine with just 2 steps!




Pull the image from Docker Hub
```python
docker pull smhussain5/atm-python
```
Then run the image as an interactive Docker container
```python
docker run --rm -it smhussain5/atm-python
```
## Technologies Used âš™

- PyCharm
- Python
- "Locale" module

## Challenges 💢

This was a straightforward application, but creating the Dockerfile was troublesome. Because the image was based on Linux distribution (Alpine), I needed to update and set the locale to en_US for the locale module and currency formatting to work.

## Insights 💭

I enjoyed developing this application because I was able to practice OOP. As a result, it showed the importance and benefits of incorporating OOP into my projects. This project could be further refactored by using PyTest to ensure proper validation and functioning.

## Contact 📲

[![Static Badge](https://img.shields.io/badge/Send%20me%20an%20email-212121?style=flat-square&logo=gmail&logoColor=EA4335)](mailto:[email protected]?)

[![Static Badge](https://img.shields.io/badge/Connect_with_me_on_LinkedIn-212121?style=flat-square&logo=linkedin&logoColor=0A66C2)](https://www.linkedin.com/in/shabab-h)

[![Static Badge](https://img.shields.io/badge/Follow_me_on_Twitter-212121?style=flat-square&logo=twitter&logoColor=1D9BF0)](https://twitter.com/shussain_5)

[![Static Badge](https://img.shields.io/badge/Follow_me_on_GitHub-212121?style=flat-square&logo=github&logoColor=FAFAFA)](https://github.com/smhussain5)