{"id":13730574,"url":"https://github.com/Naphier/unity-design-patterns","last_synced_at":"2025-05-08T03:30:54.450Z","repository":{"id":50351060,"uuid":"43515092","full_name":"Naphier/unity-design-patterns","owner":"Naphier","description":"Examples of programming design patterns in Unity C#","archived":false,"fork":false,"pushed_at":"2019-02-21T18:10:44.000Z","size":644,"stargazers_count":1139,"open_issues_count":3,"forks_count":163,"subscribers_count":108,"default_branch":"master","last_synced_at":"2024-11-14T21:38:07.522Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Naphier.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-10-01T19:00:13.000Z","updated_at":"2024-11-13T10:37:08.000Z","dependencies_parsed_at":"2022-09-04T13:21:27.813Z","dependency_job_id":null,"html_url":"https://github.com/Naphier/unity-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/Naphier%2Funity-design-patterns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naphier%2Funity-design-patterns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naphier%2Funity-design-patterns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naphier%2Funity-design-patterns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Naphier","download_url":"https://codeload.github.com/Naphier/unity-design-patterns/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252992949,"owners_count":21837191,"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":[],"created_at":"2024-08-03T02:01:16.744Z","updated_at":"2025-05-08T03:30:53.812Z","avatar_url":"https://github.com/Naphier.png","language":"C#","readme":"# Welcome to Unity Design Patterns\n### Examples of programming design patterns in Unity3D C# \n\nThanks to [Robert Nystrom's Game Programming Patterns][1]\nand the examples found on [Rivello Multimedia's website][2]. \nEach pattern is contained in a separate folder. Inside these are a folder (\"structure\") to show what classes are used in the pattern's structure and a folder (\"example\") showing a real-world example of using the pattern in Unity3D along with a scene showing it in action.\n\nAs these are accomplished I plan to do a blog article on each. Once the articles are done they will be referenced in each pattern's readme.md.\n\nDetails on each pattern can be found in the Readme.md file in each pattern's folder.\n\nPatterns done:\n\n - [Command Pattern]\n - [Abstract Factory Pattern]\n - [Flyweight Pattern]\n - [Builder Pattern]\n - [Factory Method Pattern]\n - [Decorator Pattern]\n - [Strategy Pattern]\n\n### Contributors Welcome\nPlease check out [contributors.md] if you'd like to help out with this project. It will take me forever to do all of these on my own and I'd love to have some help!\n\nPatterns to do:\n\n- Prototype\n- Singleton (Monobehaviour derived and non-derived)\n- Adapter\n- Bridge\n- Composite\n- Facade\n- Proxy\n- Chain of Responsibility\n- Interpreter\n- Iterator\n- Mediator\n- Memento\n- Observer\n- State\n- Strategy\n- Template Method\n- Visitor\n\n\n\n[1]: http://gameprogrammingpatterns.com/\n[2]: http://www.rivellomultimediaconsulting.com/unity3d-csharp-design-patterns/\n[command pattern]:https://github.com/Naphier/unity-design-patterns/tree/master/Assets/command%20pattern\n[abstract factory pattern]:https://github.com/Naphier/unity-design-patterns/tree/master/Assets/abstract%20factory\n[flyweight pattern]:https://github.com/Naphier/unity-design-patterns/tree/master/Assets/flyweight%20pattern\n[contributors.md]:https://github.com/Naphier/unity-design-patterns/blob/master/contributors.md\n[builder pattern]:https://github.com/Naphier/unity-design-patterns/tree/master/Assets/builder%20pattern\n[factory method pattern]:https://github.com/Naphier/unity-design-patterns/tree/master/Assets/factory%20method%20pattern\n[decorator pattern]:https://github.com/Naphier/unity-design-patterns/tree/master/Assets/decorator\n[strategy pattern]:https://github.com/Naphier/unity-design-patterns/tree/master/Assets/strategy%20pattern\n","funding_links":[],"categories":["C#","Sample Project"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNaphier%2Funity-design-patterns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNaphier%2Funity-design-patterns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNaphier%2Funity-design-patterns/lists"}