https://github.com/shahrukh4/coding-practices
Coding Notes for the standard coding practices for the daily tasks and features which should be followed for a better dev experience and mental peace :). Will be adding more notes related to OOPs programming and framework specific notes here. Feel free to your own creating your PRs to this repository. Thanks everyone. Peace.
https://github.com/shahrukh4/coding-practices
coding javascript laravel oops php standard-practices
Last synced: about 1 month ago
JSON representation
Coding Notes for the standard coding practices for the daily tasks and features which should be followed for a better dev experience and mental peace :). Will be adding more notes related to OOPs programming and framework specific notes here. Feel free to your own creating your PRs to this repository. Thanks everyone. Peace.
- Host: GitHub
- URL: https://github.com/shahrukh4/coding-practices
- Owner: shahrukh4
- Created: 2025-01-12T09:37:12.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-03-13T16:59:16.000Z (3 months ago)
- Last Synced: 2025-05-08T00:54:21.174Z (about 1 month ago)
- Topics: coding, javascript, laravel, oops, php, standard-practices
- Language: PHP
- Homepage:
- Size: 721 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Coding Practices 📚
Welcome to the Coding Practices repository! Here you'll find notes on Standard Coding Practices, Design Patterns, SOLID principles, Agile principles, and other stuff related to Software design and development to enhance your development experience. 🌟
## Table of Contents 📖
| Section | Description | Link |
| ---------------- | --------------------------------------------- | ---------------------------------------------- |
| SOLID Principles | Principles for object-oriented design | [SOLID Principles](SOLID-Principles/README.md) |
| Design Patterns | Common design patterns and their applications | [Design Patterns](Design-Patterns/README.md) |
| Agile Principles | Principles for Agile development | [Agile Principles](Agile-Principles/README.md) |---
## Coding Practices ✨
Coding notes for standard practices to follow for a better dev experience and mental peace for other Devs 😇.
---
## SOLID Principles 💡
This project demonstrates the SOLID principles of object-oriented design, which are essential for creating maintainable and scalable software. Each principle is implemented in its respective PHP file.
#### Table of Contents
| Principle | Example | Description |
| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| [Single Responsibility Principle (SRP)](Solid-Principles/README.md#Single-Responsibility) | [Single-Responsibility.php](SOLID-Principles/Single-Responsibility.php) | "_A class should have only one reason to change or have only one job/responsibility._" |
| [Open/Closed Principle (OCP)](Solid-Principles/README.md#Open-Closed) | [Open-Closed.php](SOLID-Principles/Open-Closed.php) | _"A class should be open for extensions but closed for modifications."_ |
| [Liskov Substitution Principle (LSP)](Solid-Principles/README.md#Liskov-Substitution) | [Liskov-Substitution.php](SOLID-Principles/Liskov-Substitution.php) | _"Objects in a program should be replaceable with instances of their subtypes without altering the correctness of the program."_ |
| [Interface Segregation Principle (ISP)](Solid-Principles/README.md#Interface-Segregation) | [Interface-Segregation.php](SOLID-Principles/Interface-Segregation.php) | _"A client should not be forced to depend on methods it does not use."_ |
| [Dependency Inversion Principle (DIP)](Solid-Principles/README.md#Dependency-Inversion) | [Dependency-Inversion.php](SOLID-Principles/Dependency-Inversion.php) | _"Depend upon abstractions. Do not depend upon concretions."_ |---
## Design Patterns 🏗️
### Overview
_"Design patterns are solutions to common and repeating problems in software design."_
#### Table of Contents
| Category | Patterns |
| -------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Creational](Design-Patterns/Creational/README.md) | [Singleton](Design-Patterns/Creational/README.md#singleton-pattern), [Prototype](Design-Patterns/Creational/README.md#prototype-pattern), [Factory Method](Design-Patterns/Creational/README.md#factory-method-pattern), [Abstract Factory](Design-Patterns/Creational/README.md#abstract-factory-pattern), [Builder](Design-Patterns/Creational/README.md#builder-pattern) |
| [Structural](Design-Patterns/Structural/README.md) | [Facade](Design-Patterns/Structural/README.md#facade-pattern), [Adapter](Design-Patterns/Structural/README.md#adapter-pattern), [Decorator](Design-Patterns/Structural/README.md#decorator-pattern), [Proxy](Design-Patterns/Structural/README.md#proxy-pattern), [Composite](Design-Patterns/Structural/README.md#composite-pattern), [Bridge](Design-Patterns/Structural/README.md#bridge-pattern), [Flyweight](Design-Patterns/Structural/README.md#flyweight-pattern) |
| [Behavioral](Design-Patterns/Behavioral/README.md) | [Memento](Design-Patterns/Behavioral/README.md#memento-pattern), [State](Design-Patterns/Behavioral/README.md#state-pattern), [Iterator](Design-Patterns/Behavioral/README.md#iterator-pattern), [Observer](Design-Patterns/Behavioral/README.md#observer-pattern), [Mediator](Design-Patterns/Behavioral/README.md#mediator-pattern), [Strategy](Design-Patterns/Behavioral/README.md#strategy-pattern), [Command](Design-Patterns/Behavioral/README.md#command-pattern), [Template Method](Design-Patterns/Behavioral/README.md#template-method-pattern), [Visitor](Design-Patterns/Behavioral/README.md#visitor-pattern), [Chain of Responsibility](Design-Patterns/Behavioral/README.md#chain-of-responsibility-pattern) |---
### Agile Principles 🏗
Agile is an iterative approach to project management and software development that focuses on flexibility, customer satisfaction, and team collaboration. For more information on Agile principles and methodologies, check out the [Agile Principles](Agile-Principles/README.md), [Agile Manifesto](https://agilemanifesto.org/) and [Agile Alliance](https://www.agilealliance.org/).
---
### Cheat Sheets 📝
For more information on design patterns, check out [this cheat sheet](https://refactoring.guru).
Feel free to contribute by creating PRs to this repository. Thanks everyone! ❤️