أكشن / فليكس: لماذا يتم تطبيق {خطأ، نتيجة} طرق AsyncToken الداخلية؟
-
05-07-2019 - |
سؤال
وكما يوحي العنوان، لماذا هي الأساليب applyResult
وapplyFault
من AsyncToken
ملحوظ mx_internal
؟
وكانت هناك عدة مرات أنني أود أن استخدام AsyncToken
في قانون بلدي، ولكني انتهى إعادة كتابة ذلك لأنني لا أريد أن فرض العملاء لuse namespace mx_internal
.
المحلول
حسنا، كما جاء في مكان ما في livedocs (على ما أظن) يستخدم mx_internal
للاحتفال الأمور في الإطار الذي قد تتغير مع مرور الوقت (ويبدو أنهم يعتقدون C # و Java يفعلون ذلك الخطأ مع الاشياء إهمال). كما أن السبب الدقيق لماذا يتم وضع علامة تلك الأساليب معينة mx_internal
فقط المطور الذي ميز منهم يعرف. أنها ربما التقى يوم واحد لمناقشة الأمر وذهب شيء من هذا القبيل: "يا ما صول نريد لتلك الأساليب" "أنا لا أعرف، هل نريد لها أن تكون للتجاوز" "غير متأكد" "حسنا، دعونا جعلها mx_internal
ثم". هناك العديد من الحالات التي اتسمت الطرق التي كان ينبغي أن تتميز محمية mx_internal
(أو القطاع الخاص الذي هو أسوأ من ذلك في بعض الحالات) بدلا من ذلك، وانها واحدة من أكثر الأشياء المزعجة في إطار المرن.
وكما كنت تستخدم مساحة الاسم mx_internal
ما إذا كنت ترغب في ذلك أم لا، وذلك لأن معظم المكونات في استيراد الإطار، لذلك إذا كنت تستخدم مكونات الإطار المرن، بناء الخاص بك يتضمن بالفعل.
نصائح أخرى
إذا كنت قد بنيت هذه الفئة كنت تريد إخفاء وظائف بعيدا عن المستخدمين العاديين، كما كنت لا تريد لهم عن طريق الخطأ استدعاء الأساليب، ولكن الطبقات الداخلية التي خلق منها يحتاج إلى الاستناد عليها، لذلك وضع العلامات عليها كما mx_internal منطقي.