لا تكرر نفسك
مبدأ عدم التكرار، أو "لا تكرر نفسك" (بالإنجليزية: Don't repeat yourself أو DRY) في هندسة البرمجيات هو يهدف إلى الحد من تكرار المعلومات من جميع الأنواع، وهو مفيد بشكل خاص في الأنظمة متعددة الطبقات.[1][2][3] ينص مبدأ (DRY) على أن "أي جزء في النظام ينبغي أن يكون معرّفاً في مكان واحد واضح مسؤول عن هذا الجزء." وقد وضع المبدأ آندي هانت وديف توماس في كتابهما المبرمج العملي، وهما يقومان بتطبيق المبدأ بشكل واسع على "قواعد البيانات، خطط الاختبارات، بناء النظام، وحتى التوثيق".[4] عندما يتم تطبيق مبدأ (DRY) بنجاح، يحتاج تعديل أي عنصر في النظام إلى التعديل في مكان واحد فقط، لينعكس التعديل في جميع الأماكن ذات الصلة وتبقى موحدة ومتسقة ومتزامنة، ودون أن يستدعي الأمر القيام بعدة تعديلات في الأماكن غير المرتبطة بهذا العنصر منطقياً.
عدم التكرار DRY وضده
يقابل مبدأ عدم التكرار DRY ما يعرف بالحلول المبللة WET. الحلول المبللة قد تكون اختصاراً من "write everything twice" أو "we enjoy typing" أو "waste everyone's time". تظهر مشكلة الحلول المبللة عادة في الأنظمة متعددة الطبقات، حيث يمكن أن تظهر كلمة ما في عدة أماكن بدءاً من واجهة المستخدم المرئية، مروراً بأسماء المتغيرات وأسماء التوابع، وانتهاءاً ببنية قاعدة البيانات وجمل الاستعلام، بحيث لو احتاج المبرمج تغيير هذه الكلمة سيضطر إلى التعديل في كل أماكن استخدامها، أو ستظهر مشكلة عدم اتساق وتوحد المصطلحات في نفس النظام. يعالج مبدأ عدم التكرار هذه المشكلة عن طريق الحث على استخدام أدوات وقواعد تتلافى تكرار عملية التعديل إلا في مكان واحد صحيح مسؤول عنه، الأمر الذي يسمح أيضاً بإضافة وتوسيع قائمة المصطلحات بشكل سلس.[5]
طالع أيضاً
المراجع
- Dave Thomas, interviewed by Bill Venners (2003-10-10). "Orthogonality and the DRY Principle". مؤرشف من الأصل في 21 مارس 2019. اطلع عليه بتاريخ 01 ديسمبر 2006. الوسيط
|CitationClass=
تم تجاهله (مساعدة) - Justin Lee (2006-03-08). "DRY is for losers". مؤرشف من الأصل في 1 يناير 2017. اطلع عليه بتاريخ 31 أغسطس 2013. الوسيط
|CitationClass=
تم تجاهله (مساعدة) - Alex Papadimoulis (2011-12-08). "The WET Cart". مؤرشف من الأصل في 3 سبتمبر 2014. اطلع عليه بتاريخ 21 مايو 2012. الوسيط
|CitationClass=
تم تجاهله (مساعدة) - Venners, Bill. "Orthogonality and the DRY Principle". www.artima.com. مؤرشف من الأصل في 21 مارس 2019. اطلع عليه بتاريخ 11 مايو 2017. الوسيط
|CitationClass=
تم تجاهله (مساعدة) - Papadimoulis, Alex (2011-12-08). "The WET Cart". The Daily WTF (باللغة الإنجليزية). مؤرشف من الأصل في 27 يونيو 2018. اطلع عليه بتاريخ 11 مايو 2017. الوسيط
|CitationClass=
تم تجاهله (مساعدة)
- بوابة برمجة الحاسوب
- بوابة تقنية المعلومات