ال Refactoring إعادة بنية التعليمات البرمجية , سنن فأسك من جديد !

عندما نقطع مجموعة من الأشجار , فعلينا أن سنن الفأس بشكل جيد , حتى تساعدنا في قطع الأشجار , وربما يكون ذلك أجدى بكثير من الإستمرار في القطع بالفأس الغير مسننة.

وكذلك عملية التطوير على تطبيق و مع زيادة حجم التطوير , فإن التطبيق سيحوي مناطق قد تكون سبب في عطب كامل إذا لم تكن هناك عملية تحسس ومعالجة للمناطق التي قد تسبب في عطب في التطوير أو التطبيق , وتحديث التصميم العام والبنية الآساسية , وتسمى هذه العملية بال Refactoring.

 

بعد فترة من بناء النظام دون تحسين أو معالجة

 

ال  Refactoring (إعادة بنية التعليمات البرمجية)

هو عملية يتم فيها تحسين التعليمات البرمجية (Code) بدون تغيير الوظائف الأساسية , حيث يتم فيها تبسيط  التعليمات البرمجية , التصميم , الإختبار , وكذلك عملية التطوير ذاتها.

أهمية ال Refactoring

– تحسين التصميم العام لنظام البرمجيات:

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

 – يساعد على فهم النظام البرمجية :

هناك مستخدمين مختلفين للنظام البرمجي أو التطبيق فالحاسوب مستخدم , المطور , وأهم مستخدم هو من سيقوم على التحديث على الكود , الأهمية تكمن في سهولة معرفته وسهولة التحديث عليه.

– يساعد في العثور على الأخطاء بسرعة أكبر :

جزء من عملية ال Refactoring هو فهم التعليمات البرمجية وتوضيح هذا الفهم  في التعليمات البرمجية مما يساعد كثيرا على العثور على الآخطاء وإصلاحها.

– يساعدك على التطوير بشكل أسرع :

وهذه حقيقة في نظام البرمجيات فكلما تحسن التصميم العام للبرمجية وكان واضحا كلما زادت جودة وسرعة التطوير , حيث انه يتم فيه تحسين التصميم بإزالة الأجزاء الغير ضرورية وتوضيح الأجزاء الضرورية مما يوفر الكثير من الوقت.

خصائص ال Refactroing

– يتم فيه تحوير التعليمات البرمجية إلى تعليمات برمجية جديده ومنظمة .
– يتم التحوير في إطار نفس اللغة المستعملة في التطوير .
– لايتم فيها تغيير سلوك التطبيق.
– بالآساس تم عملها للتطويرات الخاصة بالبرمجة الشيئية (Object Oriented Programming) ولكن يمكن إستخدامها في البرمجيات الآخرى.

 

ملاحظات

– يجب إعتماد ال Refactroing كعملية دورية في إطار التطوير وبشكل دائم وعدم إهمالها لأنه كلما تم إهمالها كلما زادت صعوبة التحسين وزاد العطب في التطوير.

– في الوقت ذاته لايمكن عمل ال Refactroing لمجرد العملية وتركها مفتوحه بدون وقت محدد ودون تحديد للمهام .

سنتحدث في التدونية القادمة عن العملية بشكل تفصيلة وماهي أهم المناطق التي يجب النظر فيها , تابعونا

دمتم بود , إلى تدوينة أخرى

شارك هذا الموضوع: