├── .formatter.exs ├── .gitignore ├── README.md ├── commands ├── README.md ├── commands.exs ├── run.exs ├── run.sh └── runner.exs ├── composite ├── README.md ├── cooking.exs ├── run.exs └── run.sh ├── facade ├── README.md ├── run.exs └── run.sh ├── factory ├── README.md ├── graphics.exs ├── run.exs ├── run.sh └── shape_factory.exs ├── observer ├── README.md ├── employee.exs ├── hr.exs ├── payroll.exs ├── run.exs └── tax_man.exs ├── proxy ├── README.md └── run.exs ├── singleton ├── README.md └── run.exs ├── strategy ├── README.md ├── formatter.exs ├── html_formatter.exs ├── plain_text_formatter.exs ├── report.exs ├── run.exs └── using_fn │ ├── README.md │ ├── report.exs │ └── run.exs └── template_method ├── README.md ├── html_report.exs ├── plain_text_report.exs ├── report.exs └── run.exs /.formatter.exs: -------------------------------------------------------------------------------- 1 | [ 2 | inputs: ["**/*.{ex,exs}"] 3 | ] 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/README.md -------------------------------------------------------------------------------- /commands/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/commands/README.md -------------------------------------------------------------------------------- /commands/commands.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/commands/commands.exs -------------------------------------------------------------------------------- /commands/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/commands/run.exs -------------------------------------------------------------------------------- /commands/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/commands/run.sh -------------------------------------------------------------------------------- /commands/runner.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/commands/runner.exs -------------------------------------------------------------------------------- /composite/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/composite/README.md -------------------------------------------------------------------------------- /composite/cooking.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/composite/cooking.exs -------------------------------------------------------------------------------- /composite/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/composite/run.exs -------------------------------------------------------------------------------- /composite/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/composite/run.sh -------------------------------------------------------------------------------- /facade/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/facade/README.md -------------------------------------------------------------------------------- /facade/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/facade/run.exs -------------------------------------------------------------------------------- /facade/run.sh: -------------------------------------------------------------------------------- 1 | elixir run.exs 2 | -------------------------------------------------------------------------------- /factory/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/factory/README.md -------------------------------------------------------------------------------- /factory/graphics.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/factory/graphics.exs -------------------------------------------------------------------------------- /factory/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/factory/run.exs -------------------------------------------------------------------------------- /factory/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/factory/run.sh -------------------------------------------------------------------------------- /factory/shape_factory.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/factory/shape_factory.exs -------------------------------------------------------------------------------- /observer/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/observer/README.md -------------------------------------------------------------------------------- /observer/employee.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/observer/employee.exs -------------------------------------------------------------------------------- /observer/hr.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/observer/hr.exs -------------------------------------------------------------------------------- /observer/payroll.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/observer/payroll.exs -------------------------------------------------------------------------------- /observer/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/observer/run.exs -------------------------------------------------------------------------------- /observer/tax_man.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/observer/tax_man.exs -------------------------------------------------------------------------------- /proxy/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/proxy/README.md -------------------------------------------------------------------------------- /proxy/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/proxy/run.exs -------------------------------------------------------------------------------- /singleton/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/singleton/README.md -------------------------------------------------------------------------------- /singleton/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/singleton/run.exs -------------------------------------------------------------------------------- /strategy/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/README.md -------------------------------------------------------------------------------- /strategy/formatter.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/formatter.exs -------------------------------------------------------------------------------- /strategy/html_formatter.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/html_formatter.exs -------------------------------------------------------------------------------- /strategy/plain_text_formatter.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/plain_text_formatter.exs -------------------------------------------------------------------------------- /strategy/report.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/report.exs -------------------------------------------------------------------------------- /strategy/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/run.exs -------------------------------------------------------------------------------- /strategy/using_fn/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/using_fn/README.md -------------------------------------------------------------------------------- /strategy/using_fn/report.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/using_fn/report.exs -------------------------------------------------------------------------------- /strategy/using_fn/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/strategy/using_fn/run.exs -------------------------------------------------------------------------------- /template_method/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/template_method/README.md -------------------------------------------------------------------------------- /template_method/html_report.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/template_method/html_report.exs -------------------------------------------------------------------------------- /template_method/plain_text_report.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/template_method/plain_text_report.exs -------------------------------------------------------------------------------- /template_method/report.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/template_method/report.exs -------------------------------------------------------------------------------- /template_method/run.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshnuss/design-patterns-in-elixir/HEAD/template_method/run.exs --------------------------------------------------------------------------------