Skip to content
NOTE: NO LONGER MAINTAINED
Ruby
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
code_examples
concepts
patterns
.gitignore
LICENSE.md
README.md

README.md

💥 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!

You can’t perform that action at this time.