La reflexión es agradable porque puedes escribir código que pueda ocuparse de cualquier clase. Por ejemplo, supongamos que desea leer / escribir sus clases en el disco y tiene, digamos, 100 clases de datos.
¿Desea escribir el nombre de cada variable de instancia y colección para 100 clases de datos? ¡Solo si te pagan por hora!
En su lugar, puede escribir un “serializador” que da una clase, itera a través de las variables de instancia utilizando la reflexión y las escribe en el disco.
- Cómo seleccionar un proveedor de outsourcing de desarrollo ágil
- ¿Es más gratificante ser ingeniero de software o científico de datos?
- Cómo conseguir un trabajo de software en Google India
- ¿Dónde puedo encontrar un artículo que muestre el costo de corregir defectos de software en diferentes etapas de SDLC?
- ¿Soy un mal ingeniero de software si no puedo implementar algoritmos de clasificación desde la parte superior de mi cabeza?
Lo mismo para leer del disco.
Hay un millón y otro usos para la reflexión también. Supongamos que tiene una GUI definida en algún tipo de archivo de datos y desea asignar un botón a una llamada al método. Puede almacenar el nombre del método en el archivo de datos, luego usar la reflexión para llamar al método en la clase. Entonces, la reflexión le permite usar datos para conectar bits de código. De nuevo, para cualquier clase.
Casi siempre que necesite conectar datos al código, la reflexión es útil.
Ah, y pruebas … La mayoría de los marcos de pruebas unitarias utilizan la reflexión para encontrar métodos de prueba …
Puede usar la reflexión para interrogar a algunas clases sobre cómo se ven, luego usar eso para construir código. Lo he usado para construir andamios web, por ejemplo.
La lista continua.