Pregunta

Como sugiere el título, ¿por qué los métodos applyResult y applyFault de AsyncToken están marcados mx_internal ?

Algunas veces me hubiera gustado usar AsyncToken en mi código, pero terminé reescribiéndolo porque no quiero forzar a los clientes a use el espacio de nombres mx_internal .

¿Fue útil?

Solución

Bueno, como se dice en algún lugar en livedocs (creo) mx_internal se usa para marcar cosas en el marco que podrían cambiar con el tiempo (aparentemente pensaron que C # y Java lo están haciendo mal con el desaprobado cosas). En cuanto a la razón exacta por la que esos métodos en particular están marcados mx_internal , solo el desarrollador que los marcó lo sabe. Probablemente se reunieron un día para discutirlo y fue algo así como: "Hey". ¿Qué acceso queremos para esos métodos " " No sé, ¿queremos que sean anulables? " " No estoy seguro " " Ok, vamos a hacer que mx_internal luego " ;. Hubo muchos casos en los que los métodos que deberían haberse marcado como protegidos se marcaron como mx_internal (o privado, que es incluso peor en algunos casos), y es una de las cosas más molestas en el marco flexible.

Además, está usando el espacio de nombres mx_internal , ya sea que lo desee o no, porque la mayoría de los componentes en el marco lo importan, por lo que si usa los componentes del marco flexible, su compilación ya incluye eso.

Otros consejos

Si hubiera creado esta clase, querría ocultar la funcionalidad a los usuarios normales, ya que no quiere que invocen los métodos por error, pero las clases internas que los crean deben invocarlos, por lo tanto, márquelos. como mx_internal tiene sentido.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top