Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

🏦 Course 11 — OOP as it Should Be (Applications) in C++

ProgrammingAdvices.com · Course 11 of the Roadmap · By Dr. Mohammed Abu-Hadhoud

C++ OOP Level


📋 About This Course

This repository contains my solutions and project work for Course 11 — OOP as it Should Be (Applications) from ProgrammingAdvices.com, taught by Dr. Mohammed Abu-Hadhoud.

Course 11 is the practical application counterpart to Course 10 (OOP Concepts). The focus here is on building real applications using Object-Oriented Programming the way professionals do — with clean design, proper class hierarchies, and real-world problem solving.


🏗️ Project: Bank Management System

The main project in this course is a fully-featured Bank Management System built entirely in C++ using OOP principles. It covers:

  • Client Management — Add, update, delete, find, and list bank clients
  • User Management — Admin panel with role-based access control
  • Transactions — Deposit, withdraw, and transfer funds between accounts
  • Currency Exchange — Multi-currency support with real-time rate updates
  • Login System — Secure login with access permissions per user
  • Transfer Log — Full audit trail of all fund transfers
  • File-Based Persistence — Data stored and read from .txt files

Key Classes

Class Responsibility
clsBankClient Core client model with full CRUD operations
clsUser User accounts and permission management
clsCurrency Currency model with exchange rate logic
clsScreen Base screen class for all UI screens
clsPerson Base class for client/user inheritance
clsDate Date handling and formatting
clsInputValidate Centralized input validation
clsString Custom string utilities

🛠️ Tech Stack

  • Language: C++
  • Paradigm: Object-Oriented Programming (OOP)
  • IDE: Visual Studio
  • Storage: File-based (.txt files)

🎯 Key OOP Concepts Practiced

  • Inheritance & Polymorphism
  • Encapsulation & Abstraction
  • Static methods and class-level operations
  • File I/O with class integration
  • Layered screen/UI architecture using base classes
  • Role-based access control design

🗺️ Roadmap Position

This course is Step 11 in the ProgrammingAdvices Roadmap — the applications phase of OOP after mastering concepts in Course 10.

... → Course 10 (OOP Concepts) → Course 11 (OOP Applications) ✅ → Course 12 (Data Structures) → ...

📚 Course Reference


Made with ❤️ by Ahmad Mallad

About

Course 11 - OOP as it Should Be (Applications) in C++ | ProgrammingAdvices.com | Bank Management System

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages