Skip to main content

Adapter Design Pattern 😃

 Adapter Design Pattern 😃





لو افترضنا انك عامل integration مع بوابة دفع و مستخدم interface والي بتحتوي علي methods زي (auth , prepare , pay)

و انطلب انك هتضيف بوابة دفع تانية لكن هنا

هتستخدم third party library في الـ integration و بالفعل مش هينفع تستخدم interface الي كنت عاملها و دا بسبب ان integration هنا محتاج فقط (pay method )

طبعا استخدامك لنفس interface مفروغ منه علشان SOLID و حاجات تانية

تفتكر اي الحل ؟

الحل هنا ببساطه انك تجيب حاجه زي موصل أو converter يقدر يخلي

new integration class تتناسب مع current interface و دا هيبقي Adapter .


- دا يعتبر أول pattern هيتم شرحه في مجموعة structural patterns و الي بتحل لك

مشاكل structure code و بيستخدم بكثرة عند إنشاء frameworks .


هتلاقي مرفق مثال مشهور أوي و هوه ان شاحن الموبايل بيبقي ثلاثي علشان تقدر

تستخدمه بتحتاج converter و الي هوه هنا

بيمثل adapter class

Comments