Demonstration of OOP concepts and usage of Abstract class & Interfaces

Overview

Learn OOP

Demonstration of OOP concepts and usage of Abstract class & Interfaces

Usage

  • clone this repo
  • run composer install
  • run php index.php

Code structure

src
├── Abstracts // contains all abstract classes
│   ├── Animal.php
│   ├── NamedObject.php
│   └── Shape.php
├── AreaAggregator.php // Utility class to aggregate objects that implements **IArea** interface
├── Concretes
│   ├── Animals
│   │   ├── Cat.php
│   │   ├── Cow.php
│   │   └── Dog.php
│   └── Shapes
│       ├── Circle.php
│       ├── Rectangle.php
│       ├── Square.php
│       └── Triangle.php
├── Describer.php // Utility class to describe all objects that implements **Describable** interface
└── Interfaces
        ├── IArea.php
        ├── IDescribable.php
        ├── INameable.php
        └── ISpeakable.php

You might also like...
This library can be used, among other things, to retrieve the classes, interfaces, traits, enums, functions and constants declared in a file

marijnvanwezel/reflection-file Library that allows reflection of files. This library can be used, among other things, to retrieve the classes, interfa

The SensioLabs DeprecationDetector runs a static code analysis against your project's source code to find usages of deprecated methods, classes and interfaces

SensioLabs DeprecationDetector CAUTION: This package is abandoned and will no longer receive any updates. The SensioLabs DeprecationDetector runs a st

PHPStan extension for sealed classes and interfaces.

Sealed classes with PHPStan This extension adds support for sealed classes and interfaces to PHPStan. Installation To use this extension, require it v

YL MVC Structure (PHP MVC) is a pattern made in PHP used to implement user interfaces, data, and controlling logic.

YL MVC Structure (PHP MVC) is a pattern made in PHP used to implement user interfaces, data, and controlling logic. It is built based on the combination of ideas from the Yii framework and Laravel framework (yl).

Adds a header to every response to try and twart Google's usage of your site in it's FLoC tracking method.

Laravel No FLoC This package will add the Permissions-Policy: interest-cohort=() to try and twart Google's usage of your site in it's FLoC tracking me

An utility component for XML usage and best practices in PHP

An utility component for XML usage and best practices in PHP

Bind your interfaces to implementations automatically.
Bind your interfaces to implementations automatically.

Laravel Auto Binder This package automatically binds interfaces to implementations in the Service Container, scanning the specified project folders. T

bin/magento command to display configured preferences for classes or interfaces

bin/magento command to display configured preferences for classes or interfaces A bin/magento command that will show you the configured preferences fo

Owner
M N Islam Shihan
M N Islam Shihan
Documentation on clean coding and demonstration of studied clean coding principals with PHP.

practice-php-clean-code Documentation on clean coding and demonstration of studied clean coding principals with PHP. The document contained in this re

Ferdous Islam 1 Feb 21, 2022
Kind of a step-debugger for your Abstract Syntrax Tree

PHP AST Inspector This package offers a command-line utility for parsing a PHP script and navigating the resulting Abstract Syntax Tree (AST), showing

Matthias Noback 61 Dec 1, 2022
Clean Code concepts adapted for PHP - A guide for producing readable, reusable, and refactorable PHP software

Clean Code concepts adapted for PHP - A guide for producing readable, reusable, and refactorable PHP software

Fabio Soares 172 Dec 25, 2022
Clean Code concepts adapted for PHP

Clean Code PHP Table of Contents Introduction Variables Use meaningful and pronounceable variable names Use the same vocabulary for the same type of v

Piotr Plenik 11.3k Jan 7, 2023
A library for adding economic concepts.

PHP use binary version 8.0.10 use PocketMine-MP version API4-beta11+dev2067 Init use oiran\walletlib\api\WalletLib; use oiran\walletlib\api\WarningLev

null 12 Jan 30, 2022
A library for adding economic concepts.

Summary This plugin adds the concept of money to the server. Wallet data held by the player is stored in .json format and I/O asynchronously. As for t

null 12 Jan 30, 2022
Clean Code concepts adapted for PHP

PHP Temiz Kod İçindekiler Giriş Değişkenler Anlamlı ve telaffuz edilebilir değişken isimleri kullanın Aynı türden değişkenler için aynı kelimeleri kul

Anıl Özmen 122 Dec 25, 2022
PHP OOP interface for writing Slack Block Kit messages and modals

Slack Block Kit for PHP ?? For formatting messages and modals for Slack using their Block Kit syntax via an OOP interface ?? By Jeremy Lindblom (@jere

Slack PHP Framework 32 Dec 20, 2022
A PHP Package to work with OS processes in an OOP way.

OS Process This package is a wrapper around the Symfony Process component, and build up an API that is object-oriented and user-friendly. Installation

Steve McDougall 58 Jan 1, 2023
Exploiting and fixing security vulnerabilities of an old version of E-Class. Project implemented as part of the class YS13 Cyber-Security.

Open eClass 2.3 Development of XSS, CSRF, SQLi, RFI attacks/defences of an older,vulnerable version of eclass. Project implemented as part of the clas

Aristi_Papastavrou 11 Apr 23, 2022