All Projects → pruett → ruby-patterns

pruett / ruby-patterns

Licence: other
NOTE: NO LONGER MAINTAINED

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to ruby-patterns

gof design patterns
GoF Design Patterns implemented in modern C++.
Stars: ✭ 21 (-36.36%)
Mutual labels:  design-patterns, oop-principles
design-patterns
Simple examples of Design Patterns with PHP Examples
Stars: ✭ 75 (+127.27%)
Mutual labels:  design-patterns, oop-principles
betterdocs
📚 Web version of https://github.com/khusnetdinov/ruby.fundamental repo - Fundamental programming with ruby examples and references. It covers threads, SOLID principles, design patterns, data structures, algorithms. Books for reading.
Stars: ✭ 25 (-24.24%)
Mutual labels:  design-patterns
final-class
🔒 Final classes for Python3!
Stars: ✭ 17 (-48.48%)
Mutual labels:  oop-principles
design-patterns-php
All Design Patterns Samples in PHP
Stars: ✭ 43 (+30.3%)
Mutual labels:  design-patterns
HeadFirstDesignPatternsSwift
An implementation of examples from "Head First Design Patterns", written in Swift.
Stars: ✭ 20 (-39.39%)
Mutual labels:  design-patterns
kactoos
General-purpose collection of OOP primitives for Kotlin
Stars: ✭ 19 (-42.42%)
Mutual labels:  oop-principles
goodcode
A curated collection of annotated code examples from prominent open-source projects
Stars: ✭ 184 (+457.58%)
Mutual labels:  design-patterns
estore
Electronic Store Application - A web based application developed using PHP and Driven by MySQL Database
Stars: ✭ 48 (+45.45%)
Mutual labels:  design-patterns
design-patterns-explained
Explanation for most of the well-known design patterns with examples and figures.
Stars: ✭ 18 (-45.45%)
Mutual labels:  design-patterns
elegantobjects
Supplementary materials for "Elegant Objects" book
Stars: ✭ 23 (-30.3%)
Mutual labels:  oop-principles
design-pattern
Design patterns
Stars: ✭ 200 (+506.06%)
Mutual labels:  design-patterns
JavaScript-design-patterns
Examples of popular design patterns in JavaScript
Stars: ✭ 41 (+24.24%)
Mutual labels:  design-patterns
design-pattern-examples-in-crystal
UML model and code examples of design patterns for Crystal. The model is created with Astah.
Stars: ✭ 51 (+54.55%)
Mutual labels:  design-patterns
swe
Examples and exercises used during Software Engineering course
Stars: ✭ 18 (-45.45%)
Mutual labels:  design-patterns
Front-End-Design-Patterns
Design Patterns
Stars: ✭ 25 (-24.24%)
Mutual labels:  design-patterns
Java-design-patterns
Java Design patterns.
Stars: ✭ 49 (+48.48%)
Mutual labels:  design-patterns
laravel-decorator
Easily decorate your method calls with laravel-decorator package
Stars: ✭ 125 (+278.79%)
Mutual labels:  design-patterns
design-system
British Columbia Government Design System for Digital Services
Stars: ✭ 33 (+0%)
Mutual labels:  design-patterns
lazylead
Eliminate the annoying work within ticketing systems (Jira, GitHub, Trello). Allows automating (without admin access) daily actions like tickets fields verification, email notifications by JQL/GQL, meeting requests to your (or teammates) calendar.
Stars: ✭ 42 (+27.27%)
Mutual labels:  oop-principles

💥 NO LONGER MAINTAINED 💥

Design Patterns in Ruby

What is a design pattern?

Design patterns provide solutions to commonly occurring problems. "[Software design] Patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system." 1

While the techniques, solutions, and best practices highlighted here are rooted in the Ruby language, the intention is to provide utility to any software developer writing in any language.

Inspiration

This is 100% inspired by the concepts outlined in Russ Olsen's excellent Design Patterns In Ruby book. I highly recommend picking it up.

Table of Contents

Concepts

Inheritance vs. Composition

Patterns

  1. Template Method Pattern
  2. Strategy Pattern
  3. Observer Pattern
  4. Composite Pattern
  5. Iterator Pattern
  6. Command Pattern
  7. Adapter Pattern
  8. Proxy Pattern
  9. Decorator Pattern
  10. Singleton Pattern
  11. Factory Pattern
  12. Builder Pattern
  13. Interpreter Pattern

Contributing

Feel free to contribute if you find any glaring mistakes, poor code examples, or anything else that needs fixing.

To submit pull request

  • Fork this repo
  • Commit changes on a feature branch
  • Submit pull request [your-feature-branch -> pruett/ruby-patterns/master]

Or simply open up an issue.

Thanks!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].