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

التعامد

في هندسة البرمجيات ، يعتبر النظام متعامدًا إذا كان تغيير أحد مكوناته يغير حالة هذا المكون فقط.

على سبيل المثال ، ضع في اعتبارك برنامجًا به ثلاثة متغيرات: a و b و c. لا ينبغي أن يؤدي تغيير قيمة a إلى تغيير قيمة b أو c ، بشرط أن يكونا مستقلين.

تعتبر هذه الخاصية مهمة بشكل خاص في تصحيح أخطاء البرنامج نظرًا لأن المرء يعتمد على تضييق عدد الأجزاء المتحركة للبرنامج لتحديد السبب الجذري للمشكلة.

راجع الاقتباس التالي من "فن برمجة UNIX" لإريك س.

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

التعامد هو مبدأ تصميم برمجيات لكتابة المكونات بطريقة لا يؤثر فيها تغيير أحد المكونات على المكونات الأخرى. إنه مزيج من مبدأين آخرين ، وهما التماسك القوي والاقتران السائب.

إنه في الواقع مصطلح مستعار من الرياضيات. على سبيل المثال ، يكون الخطان متعامدين إذا كانا متعامدين. في تصميم البرامج ، يكون مكونان متعامدين إذا كان التغيير في أحدهما لا يؤثر على الآخر.

يؤدي تطبيق هذا المفهوم على الفئات أو الأقسام الأخرى من التعليمات البرمجية إلى تقليل اقتران. لكي تكون متعامد لا يمكن أن تعتمد فئتان على تطبيق بعضهما البعض. لا يمكنهم أيضًا مشاركة البيانات العالمية. لا يؤثر تغيير الأجزاء الداخلية لفئة واحدة على الطبقة الأخرى. يجب أن تكون المكونات مستقلة ولها مسؤولية واحدة فقط.

ضع في اعتبارك طريقة تقرأ قائمة أرقام من ملف وتعيدها بترتيب مرتب. الآن تتغير المتطلبات والأرقام موجودة في قاعدة بيانات. قد يؤدي تعديل هذه الطريقة للوصول إلى قاعدة البيانات إلى تغيير رمز العميل. إذا كانت هذه طريقتين مختلفتين ، فلن يؤثر المصدر الجديد على طريقة الفرز. يجب أن يعرف رمز العميل فقط مصدر الأرقام.

تماسك قوي

داخل مكون البرنامج ، يجب أن تكون التعليمات البرمجية مرتبطة بقوة. هذا مؤشر على أن الكود مقسم بشكل صحيح.

إذا كان المكون يحتوي على جزأين أو أكثر غير متصلين نسبيًا ، فقد يشير ذلك إلى أن هذه الأجزاء يجب أن تكون في مكون مختلف ، أو بمفردها.

اقتران فضفاض

بين مكونات البرنامج ، يجب أن يكون هناك عدد قليل من الاتصالات. إذا تم اقتران مكونين بقوة ، فقد يشير ذلك إلى أنهما بحاجة إلى مكون واحد ، أو أنهما بحاجة إلى تقسيمهما بشكل مختلف إلى المزيد من المكونات.