Actionscript / Flex: Warum sind die Anwendung {Fehler, Ergebnis} Methoden der AsyncToken internen?
-
05-07-2019 - |
Frage
Wie der Titel schon sagt, warum sind die applyResult
und applyFault
Methoden der AsyncToken
mx_internal
markiert?
Es gibt ein paar Mal, dass ich AsyncToken
in meinem Code zu verwenden, es mir gewünscht hätte, aber ich habe das Neuschreiben es endete, weil ich nicht will Kunden zwingen, use namespace mx_internal
.
Lösung
Nun, wie in den LiveDocs irgendwo gesagt (ich glaube) mx_internal
verwendet wird, die Dinge im Rahmen zu markieren, die im Laufe der Zeit ändern können (anscheinend dachte, sie C # und Java tun es falsch mit dem veralteten Sachen). In Bezug auf den genauen Grund, warum diese speziellen Methoden gekennzeichnet sind, die Entwickler mx_internal
, die sie kennt markiert. Sie trafen sich wahrscheinlich eines Tages zu diskutieren und es ging so etwas wie: „Hey, was den Zugang wollen wir für diese Methoden“ „Ich weiß es nicht, wir wollen, dass sie außer Kraft gesetzt sein“ „Nicht sicher“ „Ok, wir machen sie mx_internal
dann“. Es gab viele Fälle, in denen Methoden, die markiert geschützt werden sollten mx_internal
markiert wurden (oder privat, die in einigen Fällen sogar noch schlimmer ist) statt, und es ist eines der ärgerlichsten Dinge in dem Flex-Framework.
Auch verwenden Sie den mx_internal
Namespace, ob Sie es wollen oder nicht, da die meisten Komponenten im Rahmen importieren es, wenn Sie also das Flex-Framework-Komponenten verwenden, Ihren Build es bereits enthält.
Andere Tipps
Wenn Sie diese Klasse gebaut hatte würden Sie wollen von den normalen Benutzer die Funktionalität verstecken, wie Sie versehentlich nicht wollen, dass sie die Methoden aufrufen, aber die internen Klassen, die sie erstellen müssen sie aufgerufen, deshalb markiert sie wie mx_internal sinnvoll.