{"id":19165024,"url":"https://github.com/edson-a-soares/gof_design_patterns","last_synced_at":"2025-05-07T12:23:34.437Z","repository":{"id":119155588,"uuid":"101942316","full_name":"edson-a-soares/gof_design_patterns","owner":"edson-a-soares","description":"GoF Design Patterns implemented in modern C++.","archived":false,"fork":false,"pushed_at":"2019-05-27T13:49:14.000Z","size":110,"stargazers_count":23,"open_issues_count":0,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-19T22:02:22.042Z","etag":null,"topics":["best-practices","design-patterns","gof-patterns","modern-cpp","oo-design","oo-programming","oop-principles","software-patterns"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/edson-a-soares.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-31T00:44:25.000Z","updated_at":"2025-03-16T11:25:46.000Z","dependencies_parsed_at":"2023-07-10T01:01:19.341Z","dependency_job_id":null,"html_url":"https://github.com/edson-a-soares/gof_design_patterns","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edson-a-soares%2Fgof_design_patterns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edson-a-soares%2Fgof_design_patterns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edson-a-soares%2Fgof_design_patterns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edson-a-soares%2Fgof_design_patterns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/edson-a-soares","download_url":"https://codeload.github.com/edson-a-soares/gof_design_patterns/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252874714,"owners_count":21817892,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["best-practices","design-patterns","gof-patterns","modern-cpp","oo-design","oo-programming","oop-principles","software-patterns"],"created_at":"2024-11-09T09:26:08.461Z","updated_at":"2025-05-07T12:23:34.410Z","avatar_url":"https://github.com/edson-a-soares.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Introduction\n\nSamples of the 23 [GoF design patterns](https://en.wikipedia.org/wiki/Design_Patterns) implemented in modern C++.\n\n#### Creational Patterns ####\n\n  * [Abstract Factory](AbstractFactory)\n  * [Builder](Builder)\n  * [Factory Method](FactoryMethod)\n  * [Prototype](Prototype)\n  * [Singleton](Singleton)\n\n#### Structural Patterns ####\n\n  * [Adapter](Adapter)\n  * [Bridge](Bridge)\n  * [Composite](Composite)\n  * [Decorator](Decorator)\n  * [Facade](Facade)\n  * [Flyweight](Flyweight)\n  * [Proxy](Proxy)\n\n#### Behavioral Patterns ####\n\n  * [Chain Of Responsibility](ChainOfResponsibility)\n  * [Command](Command)\n  * [Interpreter](Interpreter)\n  * [Iterator](Iterator)\n  * [Mediator](Mediator)\n  * [Memento](Memento)\n  * [Observer](Observer)\n  * [State](State)\n  * [Strategy](Strategy)\n  * [Template Method](TemplateMethod)\n  * [Visitor](Visitor)\n\n\n### Useful links ###\n* [Google Test](https://github.com/google/googletest/blob/master/googletest/docs/Primer.md)\n\n\n### References ###\n\n* **Alexandrescu, Andrei**, [Modern C++ Design: Generic Programming and Design Patterns Applied](https://www.amazon.com/Modern-Design-Generic-Programming-Patterns/dp/0201704315/ref=sr_1_1)\n* **GAMMA, Erich** et al, [Design Patterns: Elements of Reusable Object-Oriented Software](https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612)\n* **Martin, Robert**, [Agile Principles, Patterns, and Practices in C#](https://www.amazon.com/Agile-Principles-Patterns-Practices-C/dp/0131857258)\n* **Sierra, Kathy** et al, [Head First Design Patterns](https://www.amazon.com/Head-First-Design-Patterns/dp/0596007124)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedson-a-soares%2Fgof_design_patterns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedson-a-soares%2Fgof_design_patterns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedson-a-soares%2Fgof_design_patterns/lists"}