مبدأ Open/Closed Principle (OCP) ينص على أن كيانات البرمجيات يجب أن تكون مفتوحة للتوسع ولكن مغلقة للتعديل: يجب عليك إضافة سلوك جديد بإضافة كود جديد، وليس بتعديل الكود الموجود والمختبر.
الرائحة التي يستهدفها OCP
():
shape.kind == : * shape.r **
shape.kind == : shape.s **
shape.kind == : shape.w * shape.h
