Skip to content

Commit

Permalink
Merge pull request #3 from huangsam/patch-2
Browse files Browse the repository at this point in the history
Update README.md
  • Loading branch information
wesdoyle authored Jan 24, 2021
2 parents f625764 + 49b4ed2 commit e3d76b4
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,6 @@ Every design pattern has a corresponding .NET 5.0 console application.
| [Observer](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/BehavioralPatterns/Observer) | Behavioral | [Diet Plan Tracking App](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/ExamplePrograms/BehavioralExamples/DietPlanTracker) | We just launched our diet plan tracking app, and our users are constantly refining their profiles with their new weight, exercise goals, and photos. Every time the profiles get updated, we need to kick off other processes to fulfill many different features of our service. We tried polling for changes, but that's getting too expensive, and we're missing updates between intervals. Let's switch from a "pull" to a "push" design using the Observer pattern, so all of our dependent services can subscribe to the profile change event. |
| [State](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/BehavioralPatterns/State) | Behavioral | [Cafe Rewards Program](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/ExamplePrograms/BehavioralExamples/RewardsProgram) | Our family coffee shop offers a tiered rewards for frequent patrons. The more points a customer earns, the higher their tier. We want to check and adjust customer tiers with each purpose, so we'll implement a State Pattern so that the Rewards Evaluator behaves according to the Rewards Tier for a customer. |
| [Strategy](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/BehavioralPatterns/Strategy) | Behavioral | [Restaurant Menu Changer](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/ExamplePrograms/BehavioralExamples/MenuChanger) | We run a restaurant that displays a menu that changes throughout the day. We have different processes that go into making breakfast, lunch, and dinner menus, but higher-level processes remain the same. We cook and serve food at all hours, but the strategy for getting that done varies depending on the circumstance. We also want to easily be able to generate menus for higher or lower price ranges at different locations without duplicating code or cluttering high-level objects with conditional logic. We can rely on the benefits of composition over inheritance and implement the Strategy Pattern to keep our code a bit cleaner. |
| [Template Method](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/BehavioralPatterns/TemplateMethod) | Behavioral | [Cookbook Printer](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/ExamplePrograms/BehavioralExamples/CookbookPrinter) | We run a cookbook printing business for self-published chefs. Much of the process used to print the recpies in our cookbooks is exactly the same, but often differs slightly depending on the recipe. We use a template method with default behavior and virtual behavior overridden (either forcibly or optionally) by concrete recipes using inheritance. |
| [Template Method](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/BehavioralPatterns/TemplateMethod) | Behavioral | [Cookbook Printer](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/ExamplePrograms/BehavioralExamples/CookbookPrinter) | We run a cookbook printing business for self-published chefs. Much of the process used to print the recipes in our cookbooks is exactly the same, but often differs slightly depending on the recipe. We use a template method with default behavior and virtual behavior overridden (either forcibly or optionally) by concrete recipes using inheritance. |
| [Visitor](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/BehavioralPatterns/Visitor) | Behavioral | [Farmer's Market Research](https://github.com/wesdoyle/design-patterns-explained-with-food/tree/main/ExamplePrograms/BehavioralExamples/FarmersMarketResearch) | We work for a company that provides sales and marketing reports for regional Farmer's Markets. Different Farmer's Markets and their vendors have their own logic for generating data we can use for our reports, but we need to be able to generate our reports without significantly modifying any of the existing data-producing classes. We instead make them 'visitable' by our own classes, which can in turn use them as needed to generate custom reports for sales and marketing teams. |

0 comments on commit e3d76b4

Please sign in to comment.