Esta es una pregunta conceptual y no he podido encontrar la respuesta en SO, así que aquí voy:¿Por qué usar variables de instancia para "conectar" controladores con vistas?
¿Por qué variables de instancia se utilizan para conectar controladores y vistas? No tenemos dos objetos diferentes de dos clases diferentes (Controlador vs Vistas). Entonces, cuando se representa la vista, estamos en un contexto diferente, pero estamos usando variables de instancia de otro objeto. ¿No es esto la ruptura de la encapsulación de alguna manera?
¿Cómo se las arregla Rails para hacer esa coincidencia de un objeto a otro? ¿Clona todas las variables de instancias del controlador a la vista?
@meggar, en realidad, usa las variables directamente. Vea 'BasicObject # instance_eval' en los documentos de Ruby y verá cómo puede ser esto. También mira 'Binding'. –