├── .gitignore ├── README.md ├── adapter ├── Adapter.sln └── Adapter │ ├── Adapter.csproj │ ├── ClassAdapter.cs │ ├── ObjectAdapter.cs │ └── business_logic │ ├── BitcoinEvent.cs │ ├── EmployeeFiredEvent.cs │ └── IUserNotificationService.cs ├── bridge ├── indirection_solution__bridge.linq ├── problem_statement.linq ├── real_world_example.linq └── see_the_braids.linq ├── chain_of_responsibility └── key_binds.linq ├── command ├── canvas.linq ├── simple.linq ├── undoable.linq ├── when_no_arguments.linq └── with_arguments.linq ├── composite ├── example.linq ├── linked_list.linq ├── products.linq └── tree.linq ├── decorator ├── distributed_cache_example.linq ├── example.linq ├── funcational.linq └── simpler.linq ├── facade ├── Kitchen │ ├── Appliences │ │ ├── Fridge.cs │ │ ├── Microwave.cs │ │ ├── Oven.cs │ │ └── Stove.cs │ ├── Dishes │ │ └── BigMac.cs │ ├── Ingredients │ │ ├── Grain.cs │ │ ├── Liquid.cs │ │ └── Meat.cs │ ├── Kitchen.csproj │ ├── PrepareMealContext.cs │ ├── Recipes │ │ ├── BigMacRecepie.cs │ │ ├── CookedMeatRecipe.cs │ │ └── StakeRecipe.cs │ ├── Tools │ │ ├── Knife.cs │ │ └── Spatula.cs │ ├── Utils │ │ └── CuttingBoard.cs │ └── Wear │ │ ├── Pan.cs │ │ └── Pot.cs └── facade.sln ├── factory ├── abstract_factory.linq ├── factory.linq └── factory_method.linq ├── flyweight ├── intrinsic_extrinsic_states_with_decorator.linq ├── intrinsic_extrinsic_states_without_decorator.linq ├── the_problem.linq └── the_solution.linq ├── interpreter └── domain_language.linq ├── iterator ├── custom_iterator.linq ├── intro.linq └── iterator.linq ├── mediator ├── intro.linq ├── problem.linq ├── solution.linq ├── solution_with_interface.linq ├── with_mediator.linq └── without_mediator.linq ├── memento ├── example.linq └── hide_the_memento.linq ├── monad ├── 0_the_pattern.linq ├── 1_first_step.linq ├── 2_second_step.linq ├── 3_nothing.linq └── rules.linq ├── monoid ├── associativity.linq ├── how_to_implement.linq ├── how_to_implement_with_custom_type.linq └── what_is_a_monoid.linq ├── observer ├── csharp_support.linq └── example.linq ├── prototype ├── configure_factory_with_prototype.linq └── prototype_excel_example.linq ├── proxy ├── protection.linq ├── remote.linq ├── the_fine_line.linq └── virtual.linq ├── singleton ├── bad_example.linq ├── sync_access_problem.linq ├── sync_problem.linq ├── sync_problem_lock_solution.linq └── sync_problem_static_ctor_solution.linq ├── state ├── example.linq ├── real_use_case.linq └── the_mess.linq ├── strategy ├── composable.linq ├── example.linq ├── generic.linq └── single_function.linq ├── template method ├── avoid.linq ├── example.linq ├── factory.linq └── hook.linq └── visitor ├── example.linq ├── the_mess.linq └── the_solution.linq /.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | obj 3 | .vs -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/README.md -------------------------------------------------------------------------------- /adapter/Adapter.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/adapter/Adapter.sln -------------------------------------------------------------------------------- /adapter/Adapter/Adapter.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/adapter/Adapter/Adapter.csproj -------------------------------------------------------------------------------- /adapter/Adapter/ClassAdapter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/adapter/Adapter/ClassAdapter.cs -------------------------------------------------------------------------------- /adapter/Adapter/ObjectAdapter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/adapter/Adapter/ObjectAdapter.cs -------------------------------------------------------------------------------- /adapter/Adapter/business_logic/BitcoinEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/adapter/Adapter/business_logic/BitcoinEvent.cs -------------------------------------------------------------------------------- /adapter/Adapter/business_logic/EmployeeFiredEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/adapter/Adapter/business_logic/EmployeeFiredEvent.cs -------------------------------------------------------------------------------- /adapter/Adapter/business_logic/IUserNotificationService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/adapter/Adapter/business_logic/IUserNotificationService.cs -------------------------------------------------------------------------------- /bridge/indirection_solution__bridge.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/bridge/indirection_solution__bridge.linq -------------------------------------------------------------------------------- /bridge/problem_statement.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/bridge/problem_statement.linq -------------------------------------------------------------------------------- /bridge/real_world_example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/bridge/real_world_example.linq -------------------------------------------------------------------------------- /bridge/see_the_braids.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/bridge/see_the_braids.linq -------------------------------------------------------------------------------- /chain_of_responsibility/key_binds.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/chain_of_responsibility/key_binds.linq -------------------------------------------------------------------------------- /command/canvas.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/command/canvas.linq -------------------------------------------------------------------------------- /command/simple.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/command/simple.linq -------------------------------------------------------------------------------- /command/undoable.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/command/undoable.linq -------------------------------------------------------------------------------- /command/when_no_arguments.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/command/when_no_arguments.linq -------------------------------------------------------------------------------- /command/with_arguments.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/command/with_arguments.linq -------------------------------------------------------------------------------- /composite/example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/composite/example.linq -------------------------------------------------------------------------------- /composite/linked_list.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/composite/linked_list.linq -------------------------------------------------------------------------------- /composite/products.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/composite/products.linq -------------------------------------------------------------------------------- /composite/tree.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/composite/tree.linq -------------------------------------------------------------------------------- /decorator/distributed_cache_example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/decorator/distributed_cache_example.linq -------------------------------------------------------------------------------- /decorator/example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/decorator/example.linq -------------------------------------------------------------------------------- /decorator/funcational.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/decorator/funcational.linq -------------------------------------------------------------------------------- /decorator/simpler.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/decorator/simpler.linq -------------------------------------------------------------------------------- /facade/Kitchen/Appliences/Fridge.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Appliences/Fridge.cs -------------------------------------------------------------------------------- /facade/Kitchen/Appliences/Microwave.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Appliences/Microwave.cs -------------------------------------------------------------------------------- /facade/Kitchen/Appliences/Oven.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Appliences/Oven.cs -------------------------------------------------------------------------------- /facade/Kitchen/Appliences/Stove.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Appliences/Stove.cs -------------------------------------------------------------------------------- /facade/Kitchen/Dishes/BigMac.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Dishes/BigMac.cs -------------------------------------------------------------------------------- /facade/Kitchen/Ingredients/Grain.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Ingredients/Grain.cs -------------------------------------------------------------------------------- /facade/Kitchen/Ingredients/Liquid.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Ingredients/Liquid.cs -------------------------------------------------------------------------------- /facade/Kitchen/Ingredients/Meat.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Ingredients/Meat.cs -------------------------------------------------------------------------------- /facade/Kitchen/Kitchen.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Kitchen.csproj -------------------------------------------------------------------------------- /facade/Kitchen/PrepareMealContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/PrepareMealContext.cs -------------------------------------------------------------------------------- /facade/Kitchen/Recipes/BigMacRecepie.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Recipes/BigMacRecepie.cs -------------------------------------------------------------------------------- /facade/Kitchen/Recipes/CookedMeatRecipe.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Recipes/CookedMeatRecipe.cs -------------------------------------------------------------------------------- /facade/Kitchen/Recipes/StakeRecipe.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Recipes/StakeRecipe.cs -------------------------------------------------------------------------------- /facade/Kitchen/Tools/Knife.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Tools/Knife.cs -------------------------------------------------------------------------------- /facade/Kitchen/Tools/Spatula.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Tools/Spatula.cs -------------------------------------------------------------------------------- /facade/Kitchen/Utils/CuttingBoard.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Utils/CuttingBoard.cs -------------------------------------------------------------------------------- /facade/Kitchen/Wear/Pan.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Wear/Pan.cs -------------------------------------------------------------------------------- /facade/Kitchen/Wear/Pot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/Kitchen/Wear/Pot.cs -------------------------------------------------------------------------------- /facade/facade.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/facade/facade.sln -------------------------------------------------------------------------------- /factory/abstract_factory.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/factory/abstract_factory.linq -------------------------------------------------------------------------------- /factory/factory.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/factory/factory.linq -------------------------------------------------------------------------------- /factory/factory_method.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/factory/factory_method.linq -------------------------------------------------------------------------------- /flyweight/intrinsic_extrinsic_states_with_decorator.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/flyweight/intrinsic_extrinsic_states_with_decorator.linq -------------------------------------------------------------------------------- /flyweight/intrinsic_extrinsic_states_without_decorator.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/flyweight/intrinsic_extrinsic_states_without_decorator.linq -------------------------------------------------------------------------------- /flyweight/the_problem.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/flyweight/the_problem.linq -------------------------------------------------------------------------------- /flyweight/the_solution.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/flyweight/the_solution.linq -------------------------------------------------------------------------------- /interpreter/domain_language.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/interpreter/domain_language.linq -------------------------------------------------------------------------------- /iterator/custom_iterator.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/iterator/custom_iterator.linq -------------------------------------------------------------------------------- /iterator/intro.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/iterator/intro.linq -------------------------------------------------------------------------------- /iterator/iterator.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/iterator/iterator.linq -------------------------------------------------------------------------------- /mediator/intro.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/mediator/intro.linq -------------------------------------------------------------------------------- /mediator/problem.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/mediator/problem.linq -------------------------------------------------------------------------------- /mediator/solution.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/mediator/solution.linq -------------------------------------------------------------------------------- /mediator/solution_with_interface.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/mediator/solution_with_interface.linq -------------------------------------------------------------------------------- /mediator/with_mediator.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/mediator/with_mediator.linq -------------------------------------------------------------------------------- /mediator/without_mediator.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/mediator/without_mediator.linq -------------------------------------------------------------------------------- /memento/example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/memento/example.linq -------------------------------------------------------------------------------- /memento/hide_the_memento.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/memento/hide_the_memento.linq -------------------------------------------------------------------------------- /monad/0_the_pattern.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monad/0_the_pattern.linq -------------------------------------------------------------------------------- /monad/1_first_step.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monad/1_first_step.linq -------------------------------------------------------------------------------- /monad/2_second_step.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monad/2_second_step.linq -------------------------------------------------------------------------------- /monad/3_nothing.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monad/3_nothing.linq -------------------------------------------------------------------------------- /monad/rules.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monad/rules.linq -------------------------------------------------------------------------------- /monoid/associativity.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monoid/associativity.linq -------------------------------------------------------------------------------- /monoid/how_to_implement.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monoid/how_to_implement.linq -------------------------------------------------------------------------------- /monoid/how_to_implement_with_custom_type.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monoid/how_to_implement_with_custom_type.linq -------------------------------------------------------------------------------- /monoid/what_is_a_monoid.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/monoid/what_is_a_monoid.linq -------------------------------------------------------------------------------- /observer/csharp_support.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/observer/csharp_support.linq -------------------------------------------------------------------------------- /observer/example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/observer/example.linq -------------------------------------------------------------------------------- /prototype/configure_factory_with_prototype.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/prototype/configure_factory_with_prototype.linq -------------------------------------------------------------------------------- /prototype/prototype_excel_example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/prototype/prototype_excel_example.linq -------------------------------------------------------------------------------- /proxy/protection.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/proxy/protection.linq -------------------------------------------------------------------------------- /proxy/remote.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/proxy/remote.linq -------------------------------------------------------------------------------- /proxy/the_fine_line.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/proxy/the_fine_line.linq -------------------------------------------------------------------------------- /proxy/virtual.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/proxy/virtual.linq -------------------------------------------------------------------------------- /singleton/bad_example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/singleton/bad_example.linq -------------------------------------------------------------------------------- /singleton/sync_access_problem.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/singleton/sync_access_problem.linq -------------------------------------------------------------------------------- /singleton/sync_problem.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/singleton/sync_problem.linq -------------------------------------------------------------------------------- /singleton/sync_problem_lock_solution.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/singleton/sync_problem_lock_solution.linq -------------------------------------------------------------------------------- /singleton/sync_problem_static_ctor_solution.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/singleton/sync_problem_static_ctor_solution.linq -------------------------------------------------------------------------------- /state/example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/state/example.linq -------------------------------------------------------------------------------- /state/real_use_case.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/state/real_use_case.linq -------------------------------------------------------------------------------- /state/the_mess.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/state/the_mess.linq -------------------------------------------------------------------------------- /strategy/composable.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/strategy/composable.linq -------------------------------------------------------------------------------- /strategy/example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/strategy/example.linq -------------------------------------------------------------------------------- /strategy/generic.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/strategy/generic.linq -------------------------------------------------------------------------------- /strategy/single_function.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/strategy/single_function.linq -------------------------------------------------------------------------------- /template method/avoid.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/template method/avoid.linq -------------------------------------------------------------------------------- /template method/example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/template method/example.linq -------------------------------------------------------------------------------- /template method/factory.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/template method/factory.linq -------------------------------------------------------------------------------- /template method/hook.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/template method/hook.linq -------------------------------------------------------------------------------- /visitor/example.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/visitor/example.linq -------------------------------------------------------------------------------- /visitor/the_mess.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/visitor/the_mess.linq -------------------------------------------------------------------------------- /visitor/the_solution.linq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/raw-coding-youtube/design-patterns/HEAD/visitor/the_solution.linq --------------------------------------------------------------------------------