انواع الگو ها :
الگو های معماری
این الگوها به شکلگیری ساختار کلی یک نرمافزار کمک میکنند و نحوه ارتباط اجزا را مشخص میسازند. برخی از الگوهای معماری شامل:
- Domain-Driven Design (DDD)
- Microservices
- Event-Driven Architecture
- Layered Architecture
- MVC (Model-View-Controller)
- MVVM (Model-View-ViewModel)
- Client-Server
- Master-Slave
- Pipe-filter
- Broker
- Peer-to-Peer
- Event-Bus
- Blackboard
- Interpreter
الگوهای اینترپرایز (Enterprise Patterns)
این الگوها معمولاً در سیستم های بزرگ و پیچیده تجاری استفاده میشوند و به چالشهای خاصی که در محیطهای سازمانی وجود دارد، پاسخ میدهند. برخی از نمونههای معروف:
- Service Layer: جداسازی منطق سرویس از سایر لایهها.
- Repository Pattern: جداسازی لایه دسترسی به دادهها از منطق کسب و کار.
- Unit of Work: مدیریت تراکنشها و اطمینان از یکپارچگی دادهها.
- Domain Events: استفاده از رویدادها برای ارتباط اجزای مختلف سیستم.
الگوهای Gang of Four (GoF)
این الگوها شامل ۲۳ الگوی طراحی هستند که در کتاب "Design Patterns: Elements of Reusable Object-Oriented Software" نوشته شدهاند. این الگوها به سه دسته تقسیم میشوند:
Creational Patterns: الگوهای مربوط به ایجاد اشیاء، مانند:
- Singleton
- Factory Method
- Abstract Factory
- Builder
- Prototype
Structural Patterns: الگوهایی که به ترکیب اشیاء و کلاسها کمک میکنند، مانند:
- Adapter
- Composite
- Decorator
- Facade
- Proxy
Behavioral Patterns: الگوهایی که نحوه تعامل اشیاء را تعریف میکنند، مانند:
- Observer
- Strategy
- Command
- State
- Visitor
انواع الگو ها :
الگو های معماری
این الگوها به شکلگیری ساختار کلی یک نرمافزار کمک میکنند و نحوه ارتباط اجزا را مشخص میسازند. برخی از الگوهای معماری شامل:
الگوهای اینترپرایز (Enterprise Patterns)
این الگوها معمولاً در سیستم های بزرگ و پیچیده تجاری استفاده میشوند و به چالشهای خاصی که در محیطهای سازمانی وجود دارد، پاسخ میدهند. برخی از نمونههای معروف:
الگوهای Gang of Four (GoF)
این الگوها شامل ۲۳ الگوی طراحی هستند که در کتاب "Design Patterns: Elements of Reusable Object-Oriented Software" نوشته شدهاند. این الگوها به سه دسته تقسیم میشوند:
Creational Patterns: الگوهای مربوط به ایجاد اشیاء، مانند:
Structural Patterns: الگوهایی که به ترکیب اشیاء و کلاسها کمک میکنند، مانند:
Behavioral Patterns: الگوهایی که نحوه تعامل اشیاء را تعریف میکنند، مانند: