ما هو الفرق بين إعادة استخدام الرمز وتكرار الرمز؟


الاجابه 1:

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

لنفترض أن لديك شفرة صغيرة تسمى "حالة المستخدم" تتحقق مما إذا كان المستخدم قد قام بتسجيل الدخول.

ستحتاج إلى استخدام هذه الوظيفة في أماكن متعددة في نظام المستخدم الخاص بك (ربما من 4 إلى 5 خدمات ميكروية على الأقل). هذا يخلق التكرار.

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

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

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

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

حظا سعيدا!


الاجابه 2:

إعادة استخدام الرمز هي كتابة طريقة / وظيفة تقوم بتنفيذ التعليمات البرمجية المستخدمة بشكل متكرر. يمكن استخدام هذه الطريقة عدة مرات في أي وقت وحيثما تكون مطلوبة. مثال يمكن العثور عليه في مكتبات الطرف الثالث.

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


الاجابه 3:

في تجربتي ، يكون إعادة الاستخدام عندما يكون لديك وظيفة موجودة في البرنامج "أ" والتي تبدأ في استخدامها في البرنامج "ب".

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