استخراج المتغير.
Problem
لديك تعبير برمجى يصعب فهمه.
Solution
ضع نتيجة التعبير أو أجزائه في متغيرات منفصلة توضح نفسها بنفسها.
##Example
Before
void renderBanner() {
if ((platform.toUpperCase().indexOf("MAC") > -1) &&
(browser.toUpperCase().indexOf("IE") > -1) &&
wasInitialized() && resize > 0 )
{
// افعل شيئاً ما
}
}After
void renderBanner() {
final boolean isMacOs = platform.toUpperCase().indexOf("MAC") > -1;
final boolean isIE = browser.toUpperCase().indexOf("IE") > -1;
final boolean wasResized = resize > 0;
if (isMacOs && isIE && wasInitialized() && wasResized) {
// افعل شيئاً ما
}
}##Why Refactor
السبب الرئيسي لاستخراج المتغيرات هو جعل التعبير المعقد أكثر فهماً، عن طريق تقسيمه إلى أجزائه الوسيطة. يمكن أن تكون هذه:
-
شرط معامل
if()أو جزء من معامل?:في اللغات القائمة على C -
تعبير حسابي طويل بدون نتائج وسيطة
-
سطور طويلة متعددة الأجزاء
قد يكون استخراج متغير خطوة أولى نحو تطبيق استخراج الدالة إذا رأيت أن التعبير المستخرج مستخدم في أماكن أخرى في الكود الخاص بك.
##Benefits
- كود أكثر قابلية للقراءة! حاول إعطاء المتغيرات المستخرجة أسماء جيدة توضح الغرض من المتغير بصوت عالٍ وواضح. قراءة أفضل، وتعليقات مطولة أقل. اختر أسماء مثل
customerTaxValue، وcityUnemploymentRate، وclientSalutationString، إلخ.
##How to Refactor
-
أدخل سطراً جديداً قبل التعبير المعني وأعلن عن متغير جديد هناك. قم بتعيين جزء من التعبير المعقد لهذا المتغير.
-
استبدل هذا الجزء من التعبير بالمتغير الجديد.
-
كرر العملية لجميع الأجزاء المعقدة من التعبير.