Strategy pattern is one of the most useful design patterns in OOP. It lets you select an algoritm’s implementation at runtime. However most of the examples you will find online won’t make sense if you are using dependency injection
چه زمانی باید ریفکتور کنیم؟
در معماری میکروسرویس، هر سرویس دیتابیس مربوط به خود را دارد. بنابراین برای انجام یک تراکنش احتیاج به یک تراکنش توزیع شده میان سرویسها هست، که یکپارچگی دادهها را با چندین تراکنش محلی تضمین کند. الگوی saga برای پیاده سازی این تراکنش توزیع شده ارائه شده است.
- choreography-based saga
- orchestration-based saga
حمله به بدهیهای فنی
Technical Debt is a metaphor for shortcuts and hacks in software that make it more difficult to change and maintain than it could be with an optimal design. Many applications have accumulated a large amount of technical debt, and figuring out how to deal with it is a fairly common challenge for many developers