¿Cuál es el origen del término reflexión? Parece más una introspección. ¿Por qué no se llama así?
Introspección : una mirada hacia adentro; específicamente, el acto o proceso de autoexamen.
- el acto de reflejar o el estado de ser reflejado.
- una imagen; representación; contrapartida
- una fijación de los pensamientos en algo; cuidadosa consideración
- un pensamiento que ocurre en consideración o meditación.
language-agnostic
reflection
tvanfosson
fuente
fuente
Respuestas:
Hay una respuesta interesante en el artículo de Wikipedia en francés para Reflexión ( aquí )
La reflexión se puede descomponer en dos partes:
Por tanto, la reflexión es una propiedad "más fuerte" que la introspección. Por eso dices introspección de tipo para la capacidad de conocer tipos en tiempo de ejecución (y cambiarlos es otra acción: conversión / transmisión).
EDITAR: en realidad me acabo de dar cuenta de que la primera respuesta decía exactamente eso ^^. Es hora de desconectarme ...
fuente
La reflexión proviene de la idea de "autoexamen, auto-modificación y autorreplicación", reflexionando sobre uno mismo con el propósito de cambiar. En programación, usa la reflexión para examinar la estructura del programa en sí en el contexto de su uso en lugar de simplemente examinarlo. Lo que obtiene es una representación del programa que puede utilizar para modificarlo, en lugar de los datos sobre los que opera.
Puede encontrar más información en el artículo de wikipedia. .
fuente
Existe otro concepto llamado introspección de tipos que se refiere a la capacidad de determinar el tipo de un objeto en tiempo de ejecución.
editar: me doy cuenta de que su pregunta tenía la intención de ser independiente del lenguaje, pero en Java, la reflexión se usa para identificar qué miembros tiene un objeto, mientras que la introspección le permite identificar qué propiedades de JavaBeans tiene un objeto, por lo que la clase de introspección el paquete java.beans. Sin embargo, no estoy seguro de cuál sería la diferencia exacta entre los términos en otros idiomas,
fuente
El término reflexión proviene de la disertación de doctorado de 1982 de Brian Cantwell Smith que se puede encontrar en http://publications.csail.mit.edu/lcs/pubs/pdf/MIT-LCS-TR-272.pdf
Lo que se ha llegado a llamar reflexión es a menudo mera introspección, es decir, acceso a metadatos. Los requisitos de Smith para la reflexión incluían una conexión causal desde los metadatos hacia atrás, y este suele ser el componente que falta. Una forma de imaginar la reflexión es el acceso a la implementación, y no simplemente la implementación de una nueva instancia de un cálculo, sino el acceso de un cálculo a su propia implementación. Ciertamente, la API de reflexión original de Java recibió un nombre incorrecto, ya que no reflejaba en este sentido.
fuente
En .Net creo que el término Reflexión es muy apropiado porque no es el tipo en sí lo que se examina, es el manifiesto del código, que es solo una descripción.
fuente
La reflexión, en el sentido de las definiciones 3 y 4, puede ser introspectiva. Es decir, la introspección es una reflexión sobre uno mismo. Creo que introspección es la mejor palabra para referirse al acto de código analizándose a sí mismo porque la palabra es más específica, pero no creo que la reflexión sea del todo inapropiada.
fuente