Object-oriented programming (OOP)
Object-oriented programming (OOP) is a programming paradigm based on the concept of objects fundamental to many programming languages, including Java and C++. OOP can be devided in two sub types: class-based (or “classical”) and prototype-based OOP (found in JavaScript, for example).
Object-oriented programming has several advantages over procedural programming:
- OOP provides a clear structure for the programs
- OOP helps to keep the code DRY “Don’t Repeat Yourself”, and makes the code easier to maintain, modify and debug
- Logic can be abstracted, encapsulated, composed, inherited and decoupled
- GitHub: https://github.com/topics/oop
- Wikipedia: https://en.wikipedia.org/wiki/Object-oriented_programming
- Created by: MIT, Alan Kay
- Released: 1960
- Related Topics: procedural-programming, open-closed-principle, inheritance, polymorphism, orm, functional-programming, event-driven-programming,
- Aliases: object-oriented-programming, object-oriented-design,
- Last updated: 2026-06-25 00:18:25 UTC
- JSON Representation
https://github.com/alexandrecpedro/object-oriented_programming
Object-oriented Programming (OOP) | Language - JAVA | IDE - IntelliJ IDEA
design-pattern design-patterns java oop oop-principles oops-in-java uml uml-diagram
Last synced: 23 Jun 2026
https://github.com/ntahaegilli/abapsolidreport
An ABAP report template that follows SOLID principles
abap abap-environment oop sample sample-code
Last synced: 17 Jun 2025
https://github.com/zaidqaiser/snake-game-cpp
Basic Project | Snake Game CPP, Using cpp , oop concepts.
basic-cpp-project basic-project c-language c-language-programming cpp oop oop-principles snake snake-game snakegame
Last synced: 14 Jun 2025
https://github.com/brunohnsouza/bootcamp-abstraction-oo
Using the four pillars of Object Orientation (Abstraction, Encapsulation, Inheritance and Polymorphism) to abstract a Bootcamp
Last synced: 12 Apr 2025
https://github.com/ahmed-gaper/password-manager
A secure console-based password management solution—initially console-only, with planned UI and advanced feature improvements—stores and encrypts your passwords using robust cryptographic algorithms.
ado-net cli-application encryption ooad oop sha-1-hash sqlite xor-cipher
Last synced: 04 May 2026
https://github.com/Shahdd21/Online-Travel-Booking-System
The Project simulates an Expedia-like booking system.
apis booking-system console expedia java oop
Last synced: 07 May 2025
https://github.com/arsham-lh/oop
Java code associated with Object Oriented Programming course. The final project involved simulating the game Farm Frenzy 3 using Java and object-oriented programming (OOP)
application application-development graphics-java java oop
Last synced: 06 Mar 2025
https://github.com/ondrejhruby/blackjack
Command-line Blackjack game implemented in Python, where players can test their luck and strategy against a computer dealer. The game follows classic Blackjack rules, allowing players to hit, stand, and try to reach 21 without busting.
blackjack blackjack-game card-game command-line-game console-game game-development game-logic interactive-game object-oriented-programming oop python python-game randomization terminal-game
Last synced: 15 Mar 2025
https://github.com/saidali-ibn-zafar/the-hard-parts-of-object-oriented-javascript
Learn the fundamentals of Object Oriented Programming in JavaScript for organizing and scaling your code. You'll learn JavaScript’s prototypal design and how it works to enable the new ES6 classes under the hood. Understanding prototypes and classes in JavaScript is crucial for working with most modern frameworks and for those coming from ...
Last synced: 23 Feb 2026
https://github.com/vincy1230/oop-class
北京工商大学 计算机与人工智能学院 面向对象语言与编程 (2023-2024-2 | 杨伟杰) 课程实验集
Last synced: 15 Mar 2025
https://github.com/danieldantasdev/software-architecture_formation-course-luisdev-part-2_dotnet-8_csharp-12
Formação completa sobre Arquitetura de Software: fundamentos, SOLID, boas práticas, POO, padrões de projeto (GoF), padrões arquiteturais, DDD, arquitetura limpa, hexagonal, EDA, serverless e análise de qualidade de código.
architecture backend best-practices clean-architecture code-quality csharp ddd design-patterns dotnet eda event-driven gof hexagonal-architecture luisdev oop refactoring serverless software-architecture software-engineering solid
Last synced: 13 Apr 2026
https://github.com/AhmedNassar7/Smart-Campus
A university management system .
algorithms data-structures database java javaswing oop sql ux-ui
Last synced: 07 Apr 2025
https://github.com/danieldantasdev/object-oriented-programming_course-luisdev-essential-beginner-part-11_dotnet-8_csharp-12
Repositório da trilha 'Programação Orientada a Objetos' do Kit Essencial Iniciante .NET. Inclui fundamentos de OO, como classes, objetos, herança, polimorfismo, encapsulamento, abstração, interfaces e classes abstratas, com práticas guiadas.
abstraction beginner classes csharp dotnet encapsulation inheritance interfaces luisdev object-oriented-programming oop polymorphism
Last synced: 13 Apr 2026
https://github.com/jhonsnow456/cli-rpg-game
Implementation of object-oriented programming in python. It's a command-line game.
Last synced: 25 Jun 2025
https://github.com/truthfultiger/yadvt-mvc
Redesign of assignment using MVC
Last synced: 20 Apr 2026
https://github.com/matheustecchio/mi-rental-system
This program simulates a car and bus rental system for Morrison's Island Car and Bus Rental.
java object-oriented-programming oop
Last synced: 12 Apr 2025
https://github.com/sulhanfuadi/php-oop-class
This repository contains object-oriented programming (OOP) code written in PHP as part of the "Basic Concepts of Object-Oriented Programming in PHP" class by CodePolitan. The code covers basic to advanced OOP concepts.
Last synced: 16 May 2026
https://github.com/git-user-cpp/time-management-system
⏳ Time management system is implemented in C++. Created for rational time management ⏳
cpp cpp-programming linux linux-app oop time-management
Last synced: 14 May 2026
https://github.com/mouad-el-asri/cpp_modules
It's time to dive into Object Oriented Programming and start our C++ journey! 🔥
casting class-template classes-and-objects containers cplusplus cpp encapsulation exceptions function-templates inheritance object-oriented-programming oop oop-principles operator-overloading polymorphism
Last synced: 08 Nov 2025
https://github.com/ayvero/java_oop_series
Java OOP exercise to manage TV series, including episodes, ratings, seasons, and methods for tracking watched episodes and calculating averages.
java oop oop-principles oops-in-java
Last synced: 15 May 2025
https://github.com/zahidhasann88/booklist-app
Build book list app with Javascript(OOP)
Last synced: 12 Apr 2025
https://github.com/itsmestevieg/phpbaseplate
PHPBasePlate is a Framework to make a fully portable website which can be easily moved between servers. PHPBasePlate is being developed to simplify the design and development of website and web applications.
framework mvc-framework oop php template-engine
Last synced: 10 Jul 2025
https://github.com/gourabofficial/object-oriented-programming
Using Java ..
java object-oriented-programming oop oops oops-in-java
Last synced: 20 Jun 2025
https://github.com/cba85/teach-php-oop-refactoring
Refactoring from procedural to OOP in PHP
Last synced: 26 May 2026
https://github.com/parisaalizadeh2003/custom_for_loop
This project defines a Python class CustomFor that manually iterates over any iterable using next(), applying a specified function to each element. In this example, it capitalizes and prints each character. It demonstrates the use of iterators in Python.
iterable iterate iterator loop loops-and-iterations oop python
Last synced: 12 Apr 2025
https://github.com/z347/node-simpleapi
Test task to Chatbots.Studio: simple online store API
eslint express-js node-js oop rest-api typescript
Last synced: 11 Apr 2026
https://github.com/motapinto/gold-digger
Java game using Lanterna, Java, Design Patterns, Unit Tests, Flood Fill, etc
flood-fill java oop patterns unit-tests
Last synced: 16 May 2026
https://github.com/apostolissiampanis/weather-app-api
WeatherApp is a Java-based console application that retrieves and processes weather data using the wttr.in web service.
api data hibernate java json lombok objected-orientated-programing oop spring-boot spring-data-jpa sqlite webflux
Last synced: 05 May 2026
https://github.com/shuaib-code/bouncing-balls
An exploration of JavaScript Object-Oriented Programming (OOP) through a bouncing balls animation demo from MDN Web Docs
bouncing-ball canvas class oop
Last synced: 26 Jan 2026
https://github.com/saadarazzaq/inventory-management-system-oop-project
This was my 3rd Semester Project made completely using Object Oriented Concepts of C++.
Last synced: 10 Jul 2025
https://github.com/mostafahima/employee-management-system
A training project to apply OOP concepts in Python, allowing employee management with add, update, delete, and salary reports.
oop oop-python practice practice-oop
Last synced: 16 Nov 2025
https://github.com/alexprut/design-patterns-javascript
Classic OOP Design Patterns from GoF, implemented in JavaScript.
design-patterns gof javascript oop
Last synced: 30 Apr 2025
https://github.com/lucasdota/chess-system-java
Jogo de xadrez em Java desenvolvido como projeto de conclusão do curso Java COMPLETO Programação Orientada a Objetos, oferecido pela DevSuperior na plataforma Udemy, com mais de 160 mil alunos.
Last synced: 14 May 2026
https://github.com/jcchikikomori/hello-php
Sample of what PHP can do for your future Web Project!
composer crud htaccess json multi-user myphp mysql nodejs oop pagination php php-framework psr12 template yarn
Last synced: 05 Feb 2026
https://github.com/alexandrastroiu/coffeeshop-oop-project
The project aims to develop a management system for a network of coffeeshops.
cplusplus object-oriented-programming oop
Last synced: 07 Sep 2025
https://github.com/ryanlarge13/physics-sym
JavaScript Ball Physics Simulation
canvas javascript oop partitioning-algorithms
Last synced: 05 Apr 2025
https://github.com/csaba79-coder/book-register
Reading 2 txt files for the books and their category!
error-handling file-handling oop
Last synced: 26 Mar 2025
https://github.com/effectra/db
Effectra\Database is a PHP package that provides database connection and query execution functionality. It offers a convenient interface for interacting with different database drivers and executing common database operations.
connection db db-manager mysql oop pdo php sqlite
Last synced: 11 Apr 2026
https://github.com/geozi/selenium-java-junit-popupwindow
Showcases the use of Selenium with Java and JUnit for performing functional tests on a pop-up window.
functional-testing junit5 oop selenium-java surefire-reporting
Last synced: 01 Apr 2025
https://github.com/jiyay27/terminalos
In partial fulfilment of the course CSOPESY, to create a Terminal based Operating System.
Last synced: 15 Apr 2025
https://github.com/vladandreitoma/igisol_jyvaskyla_xept_experimental_campaign
A simulation toolkit together with data analysis for the Xe&Pt Exotic Nuclei Generation experiment @ Jyvaskyla December 2022. Helping dr.Paul Constantin with simulation development. Simulation is done using Geant4 provided by CERN. Data anlysis is done using ROOT by Cern. Both C++ based. Job distributors to run the sim are coded in pearl
analysis architecture-design cplusplus data oop oop-principles pearl simulations
Last synced: 05 Sep 2025
https://github.com/antoniomiguel03/projetos_javascript
Projetos desenvolvidos utilizando JavaScript, cada branch é um projeto.
back-end eventos front-end javascript logica-de-programacao oop variaveis visual-studio-code
Last synced: 30 Mar 2025
https://github.com/djordjevujatovic/pong-project
es6 html5-canvas mvc oop webpack
Last synced: 15 May 2026
https://github.com/eduardob-programador/simple-crud
A simple create, read, update, delete system I built using mongoDB as a Database
Last synced: 11 Apr 2026
https://github.com/mdawoud27/alx-higher_level_programming
Python is a popular programming language. It was created by Guido van Rossum, and released in 1991. It is used for: web development (server-side), software development, mathematics, system scripting.
Last synced: 15 Apr 2026
https://github.com/pwalig/obiektowefrontend
Front End project for Programowanie Obiektowe
college-assignment college-project game gui gui-application java java-awt java-awt-swing java-gui java-gui-application java-swing object-oriented-programming oop simulation
Last synced: 20 Jan 2026
https://github.com/catalina2820/java-programming-i
Progress in the 'Java Programming I' MOOC course from the University of Helsinki. This course teaches the fundamentals of programming and object-oriented programming in Java, and contains practical exercises and projects.
arraylist control-flow functions java methods oop
Last synced: 04 Apr 2025
https://github.com/azazhassankhan/cppmasterworks
Welcome to MyCppProject! This repository hosts a collection of C++ programs and projects. Whether you're a beginner looking to explore C++ fundamentals or an experienced developer seeking advanced concepts, this repository aims to provide a comprehensive set of resources and examples.
advanced-programming cplusplus cpp oop
Last synced: 15 Mar 2025
https://github.com/jeelsidpara2811/weather-data-app-jeel
Generates a static website (HTML) from Java OOP city models; includes small/big cities with navigation.
gradle html java oop static-site
Last synced: 16 Apr 2026
https://github.com/praveendinesha/class_objects
Unleash the power of code organization and reusability.
abstraction attributes class-definition class-hierarchy constructor destructor encapsulation hierarchy inheritance models objects oop oops polymorphism properties
Last synced: 13 Aug 2025
https://github.com/mciccale/sokoban
A fully functional Sokoban implemetation in Java with a MVC design pattern using inheritance and polymorphism as the main mechanism of the game.
game java java-swing java-swing-game oop oop-principles oops-in-java
Last synced: 04 Apr 2025
https://github.com/anmamun0/oop-bank-management-system
Bank Management System project in Python for managing customer accounts, transactions, balance updates, and report generation with OOP.
Last synced: 17 Jun 2025
https://github.com/tanerceker/oop-ts
OOP in Typescript
oop oop-concepts oop-principles typescript
Last synced: 15 Mar 2025
https://github.com/firmansyah2701/class-diagram
Simple app relationship class diagram with php
Last synced: 11 Jun 2026
https://github.com/blaze6950/battlecity
OOP example
cplusplus cui game game-development oop oop-principles
Last synced: 10 Oct 2025
https://github.com/bell-kevin/car
Car OOP. From pages 267 and 268 from Introduction to Programming with Java A Problem Solving Approach, Second Edition by John Dean and Raymond Dean
car object-oriented-programming oop oop-principles oops-in-java
Last synced: 17 Mar 2025
https://github.com/filonenkodima/mapty
Mapty is a web application for tracking workouts on a map. It allows users to record running or cycling activities and visualize their location using Google Maps.
clean-architecture frontend google-maps-api html-css-javascript oop responsive-design
Last synced: 07 Apr 2025
https://github.com/msolimans/rpg
RPG Game based on OOP and different design patterns (not completed yet)
builder-pattern csharp design-patterns factory-pattern iterator jetbrains-rider observer-pattern oop oop-principles singleton strategy-pattern
Last synced: 04 Apr 2025
https://github.com/bell-kevin/multiplesavingsaccounts
In this example, you will enhance the Savings Account driver to create multiple accounts. The project will create 3 separate Savings Accounts, simulating 3 different customers creating these accounts. Note that no changes are needed in the Account class – it describes an account, and it doesn’t matter how many accounts we create with that class. It’s like a favorite cookie recipe – it’s the same recipe no matter how many times you bake cookies. First, MAKE A COPY of the previous project for the Savings Account. In the project in Example 1, a Savings Account was created with this line: Account savingsAccount = new Account(); In this project, for clarity, name that account “savings1”, like this: Account savings1 = new Account(); To create a second account, you repeat that same code but with a different name for the object. Account savings1 = new Account(); // first account Account savings2 = new Account(); // second account When this executes, there will be 2 distinct account objects. Each one has its own instance variables of balance and interest rate, and each has its own methods to get and set its variables and to grow. Create a third account. The original project asked the user for 3 pieces of information for 1 account. This project simulates asking 3 different users for those 3 pieces of information. That sounds like repetition, so use a FOR loop to ask for the data and assign the values to the variables in each object. Also grow the accounts inside this loop. You must use the same variables for the user input – balance, interestRate, and cycles – for each user’s information. Do not create 3 sets of those variables.
accounts object-oriented-programming oop savings-account
Last synced: 21 Aug 2025
https://github.com/somodidenise/polynomial-calculator
A Java desktop app for basic and advanced polynomial operations with a user-friendly GUI.
calculator gui java maven mvc oop polynomial swing
Last synced: 16 May 2026
https://github.com/spear97/platformer
Platformer Game that was made using Android Studio
android-studio computer-graphics game-development java mobile-development oop platformer-game
Last synced: 23 Mar 2025
https://github.com/theoliverlear/sigwarth-home-tools-website
A deployed through AWS Spring Boot website which hosts the tools regularly needed in the Sigwarth household.
aws bootstrap5 full-stack javascript oop sass service spring-boot tools typescript website
Last synced: 11 Apr 2026
https://github.com/rudra-g-23/python-fundamentals
This repository covers a comprehensive range of Python topics, from basic to advanced concepts. It includes materials, tasks, and solutions to help you learn and master Python programming.
advaced beginner-friendly beginner-friendly-project data-science excercise-solution excercises functions intermediate loops loops-and-iterations notebooks oop oops-in-python projects python python-fundamentals-course python3
Last synced: 26 Mar 2025
https://github.com/mrbrunelli/java-livraria-poo
Meus estudos de Programação Orientada a Objetos e seus princípios com Java
Last synced: 05 Mar 2025
https://github.com/gortadevosyan/clipainter
CLI Painter
cpp design-patterns oop qt qt6
Last synced: 05 Jan 2026
https://github.com/hemanthkumarsunkari27/gamehub
GameHub is a modular Python gaming platform hosting classic games like a GK Quiz, Tic-Tac-Toe, Hangman, and an Anagram Solver. Designed with object-oriented principles, GameHub is scalable, stable, and easy to expand, with each game in its own module. It includes unit tests for each game to ensure a reliable experience .
anagram game-development games general-knowledge-quiz hangman oop python tic-tac-toe unit-testing
Last synced: 01 Jul 2025
https://github.com/blendereru/object-oriented-programming-in-sharp
exploring design patterns and principles. 100% in C#
csharp design-patterns design-principles oop solid-principles uml
Last synced: 14 May 2026
https://github.com/lixx21/scramble_word_game_python
Scramble word game where users can add new question and play the game whenever they want
Last synced: 03 Apr 2025
https://github.com/melvintivane/ustm-programacao-java-tp1
Repository dedicated to my college exercises.
Last synced: 09 Sep 2025
https://github.com/jurek-muszynski/proi-carrental
Half-term project assignment as part of the Object-Oriented Programming class @ Warsaw University of Technology
Last synced: 07 May 2025
https://github.com/sonytruelove/geometry-graphic-editor
:large_blue_circle: Shapes on Field with search,delete,intersect detection, area and perimeter calculating
awt classdiagram editor graphics gui intersection istu java oop paint2d shape swing uml-diagram
Last synced: 17 Mar 2025
https://github.com/shramkoweb/cinema
Сервис для фанатов большого кино (vanilla JS/MVC) 📺
chartjs es6 js momentjs oop vanilla-js webpack
Last synced: 30 Apr 2026
https://github.com/kawser2133/programming-basics-part1
Programming Basics Part 1 - This repository provides a comprehensive introduction to foundational C# programming concepts, including classes, objects, constructors, types of classes, and access modifiers.
access-modifier classes constructor csharp fields methods object-oriented-programming objects oop programming properties
Last synced: 31 Mar 2025
https://github.com/aminul-islam-niloy/design-patterns-oodp-using-java
Design Pattern Lab using java
Last synced: 07 Jun 2026
https://github.com/ite-2022-pwr/ite-is-semestr-2
Semestr 2, studia inżynierskie: Programowanie obiektowe
java object-oriented-programming oop programming
Last synced: 28 Mar 2025
https://github.com/thevyke/poo-restaurante
Projeto da disciplina de Programação Orientada à Objetos realizado como requisito parcial para obtenção de nota.
intellij java oop oops-in-java vscode
Last synced: 10 Mar 2026
https://github.com/ostatni5/evolution-of-moving-creatures
Simulation of life. Project for object oriented programming classes.
object-oriented object-oriented-programming oop
Last synced: 02 May 2026
https://github.com/muzakkirhossainminhaz/dart-projects
Explore Dart with a focus on mastering Object-Oriented Programming (OOP) in this repository. Share Dart projects demonstrating OOP principles, encapsulation, inheritance, polymorphism, and more on this learning journey.
dart dart-lang dart-oop dartlang oop oop-principles
Last synced: 06 Apr 2026
https://github.com/omar-azmi/fbicodec_ts
A Forward and Backward Invertible binary serializer TypeScript library built on modularity and composition. When you hear the words `FBI OPEN UP!`, you'll be able to prove your innocence with any data encoded with this library.
binary-serialization codec decoder deno encoder es6 file-parser invertible modular oop parser schema serialization serialization-library tiny typescript unparser unserialize
Last synced: 28 Apr 2026
https://github.com/mdradityatama/management-lab
laboratorium management manajemen oop php phpoop
Last synced: 16 May 2026
https://github.com/flibouche/poo_rpg
Object-oriented programming project about RPG.
Last synced: 23 Mar 2025
https://github.com/flibouche/poo_1
This tutoriel by Elan Formation is an introduction to the PHP Object-oriented programming that show classes and heritage.
Last synced: 23 Mar 2025
https://github.com/flibouche/exo_poo_mmu_banque
Object-oriented programming project about bank.
Last synced: 23 Mar 2025
https://github.com/eduardob-programador/codigoparaumrpg
É só um arquivo que era pra ser simples de fazer baseado num sistema de RPG que um amigo fez, esse sistema por sua vez era baseado no jogo Warframe
Last synced: 15 Mar 2025
https://github.com/mimani68/slack
nodejs slack chat
babel es6 es6-javascript es6-modules express oop slack slack-api slack-bot
Last synced: 11 Apr 2026
https://github.com/mohamed-mostafaaa/alx-higher_level_programming
Higher-level programming - Python Module of High-level programming and Python, SQL, carried out during Full Stack Software Engineering studies at [ALX School]
c database javascript mysql oop orm pycodestyle python3 shell shell-scripting sql sqlalchemy
Last synced: 11 Apr 2026