{"id":23878422,"url":"https://github.com/matinghanbari/csharp-design-patterns","last_synced_at":"2025-09-09T06:31:21.509Z","repository":{"id":270492323,"uuid":"910541367","full_name":"MatinGhanbari/csharp-design-patterns","owner":"MatinGhanbari","description":"This repository features famous design patterns along with sample implementations in C#, providing a practical resource for understanding and applying these patterns in software development.","archived":false,"fork":false,"pushed_at":"2024-12-31T15:52:16.000Z","size":160,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-31T16:25:24.591Z","etag":null,"topics":["csharp","design-patterns","dotnet"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MatinGhanbari.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":"docs/CODE_OF_CONDUCT.md","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":"2024-12-31T15:17:58.000Z","updated_at":"2024-12-31T16:15:05.000Z","dependencies_parsed_at":"2024-12-31T16:35:39.873Z","dependency_job_id":null,"html_url":"https://github.com/MatinGhanbari/csharp-design-patterns","commit_stats":null,"previous_names":["matinghanbari/csharp-design-patterns"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatinGhanbari%2Fcsharp-design-patterns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatinGhanbari%2Fcsharp-design-patterns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatinGhanbari%2Fcsharp-design-patterns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatinGhanbari%2Fcsharp-design-patterns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MatinGhanbari","download_url":"https://codeload.github.com/MatinGhanbari/csharp-design-patterns/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":232400005,"owners_count":18517346,"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":["csharp","design-patterns","dotnet"],"created_at":"2025-01-03T21:36:59.704Z","updated_at":"2025-09-09T06:31:21.492Z","avatar_url":"https://github.com/MatinGhanbari.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CSharp Design Patterns\n\u003cdiv align=\"center\" markdown=\"1\"\u003e\n  \n![banner](/assets/images/banner.jpg)\nphoto by [zealousys.com](https://www.zealousys.com/blog/c-sharp-design-patterns/)\n\u003c/div\u003e\n\n\n---\n\nThe repository aims to enhance the software development process by promoting code reusability, maintainability, and scalability through the effective use of design patterns. It serves as both an educational tool for beginners and a reference guide for experienced developers seeking to refine their design skills in C#.\n\n\n## The Catalog of Design Patterns\n1. [Creational patterns](#creational-patterns)\n2. [Structural patterns](#Structural-patterns)\n3. [Behavioral patterns](#Behavioral-patterns)\n\n### Creational patterns\nThese patterns provide various object creation mechanisms, which increase flexibility and reuse of existing code.\n\n1. [Factory Method](https://refactoring.guru/design-patterns/factory-method/csharp/example)\n2. [Abstract Factory](https://refactoring.guru/design-patterns/abstract-factory/csharp/example)\n3. [Builder Pattern](https://refactoring.guru/design-patterns/builder/csharp/example)\n4. [Prototype](https://refactoring.guru/design-patterns/prototype/csharp/example)\n5. [Singleton](https://refactoring.guru/design-patterns/singleton/csharp/example)\n\n\n### Structural patterns\nThese patterns explain how to assemble objects and classes into larger structures while keeping these structures flexible and efficient.\n\n1. [Adapter](https://refactoring.guru/design-patterns/adapter/csharp/example)\n2. [Bridge](https://refactoring.guru/design-patterns/bridge/csharp/example)\n3. [Composite](https://refactoring.guru/design-patterns/composite/csharp/example)\n4. [Decorator](https://refactoring.guru/design-patterns/decorator/csharp/example)\n5. [facade](https://refactoring.guru/design-patterns/facade/csharp/example)\n6. [flyweight](https://refactoring.guru/design-patterns/flyweight/csharp/example)\n7. [Proxy](https://refactoring.guru/design-patterns/proxy/csharp/example)\n\n### Behavioral patterns\nThese patterns are concerned with algorithms and the assignment of responsibilities between objects.\n\n1. [Chain of Responsibility](https://refactoring.guru/design-patterns/chain-of-responsibility/csharp/example)\n2. [Command](https://refactoring.guru/design-patterns/command/csharp/example)\n3. [Iterator](https://refactoring.guru/design-patterns/iterator/csharp/example)\n4. [Mediator](https://refactoring.guru/design-patterns/mediator/csharp/example)\n5. [Memento](https://refactoring.guru/design-patterns/memento/csharp/example)\n6. [Observer](https://refactoring.guru/design-patterns/observer/csharp/example)\n7. [State](https://refactoring.guru/design-patterns/state/csharp/example)\n8. [Strategy](https://refactoring.guru/design-patterns/strategy/csharp/example)\n9. [Template Method](https://refactoring.guru/design-patterns/template-method/csharp/example)\n10. [Visitor](https://refactoring.guru/design-patterns/visitor/csharp/example)\n\n## Refrence\n- [Refactoring.Guru](https://refactoring.guru/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatinghanbari%2Fcsharp-design-patterns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatinghanbari%2Fcsharp-design-patterns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatinghanbari%2Fcsharp-design-patterns/lists"}