لا تكرر نفسك

لا تكرر نفسك  أو مبدأ عدم التكرار في هندسة البرمجيات يهدف إلى الحد من تكرار المعلومات من جميع الأنواع، وهو مفيد بشكل خاص في الأنظمة متعددة الطبقات. ينص مبدأ (DRY) على أن «أي جزء في النظام ينبغي أن يكون معرّفاً في مكان واحد واضح مسؤول عن هذا الجزء.» وقد وضع المبدأ آندي هانت وديف توماس في كتابهما المبرمج العملي، وهما يقومان بتطبيق المبدأ بشكل واسع على «قواعد البيانات، خطط الاختبارات، بناء النظام، وحتى التوثيق». عندما يتم تطبيق مبدأ (DRY) بنجاح، يحتاج تعديل أي عنصر في النظام إلى التعديل في مكان واحد فقط، لينعكس التعديل في جميع الأماكن ذات الصلة وتبقى موحدة ومتسقة ومتزامنة، ودون أن يستدعي الأمر القيام بعدة تعديلات في الأماكن غير المرتبطة بهذا العنصر منطقياً.

عدم التكرار DRY وضده 
يقابل مبدأ عدم التكرار DRY ما يعرف بالحلول المبللة WET. الحلول المبللة قد تكون اختصاراً من "write everything twice" أو "we enjoy typing" أو "waste everyone's time". تظهر مشكلة الحلول المبللة عادة في الأنظمة متعددة الطبقات، حيث يمكن أن تظهر كلمة ما في عدة أماكن بدءاً من واجهة المستخدم المرئية، مروراً بأسماء المتغيرات وأسماء التوابع، وانتهاءاً ببنية قاعدة البيانات وجمل الاستعلام، بحيث لو احتاج المبرمج تغيير هذه الكلمة سيضطر إلى التعديل في كل أماكن استخدامها، أو ستظهر مشكلة عدم اتساق وتوحد المصطلحات في نفس النظام. يعالج مبدأ عدم التكرار هذه المشكلة عن طريق الحث على استخدام أدوات وقواعد تتلافى تكرار عملية التعديل إلا في مكان واحد صحيح مسؤول عنه، الأمر الذي يسمح أيضاً بإضافة وتوسيع قائمة المصطلحات بشكل سلس.

طالع أيضاً 
 تكرار الكود
 إعادة استخدام التعليمات البرمجية
 تسوية قاعدة البيانات
 فصل الاهتمامات
 برمجة مهيكلة

المراجع 

هندسة البرمجيات