iOS: identifica de manera única ViewControllers de Storyboard

Tengo un ViewController personalizado que está destinado a ser reutilizable, y un número arbitrario de instancias se encadenará juntas en un NavigationController en Storyboard, todos compartiendo el mismo model que un delegado.

El ViewController necesita decirle al model qué instancia son. Actualmente, tienen una propiedad interna que obtienen de la segue, pero no parece muy idiomática y no se presta para tener múltiples instancias en pantalla (para iPad). Me imagino que debe haber una forma más limpia de hacer esto, ¿alguien sabe qué es? Gracias.

RESULTADO: self.view.tag

La UIView de un UIViewController tiene una propiedad de tag que puede establecer desde cualquier lugar que desee. También podría simplemente identificar el tipo de controller mediante el uso de [self class] . O simplemente use la location de la memory haciendo reference directamente al controller.

Actualización Puede simplemente implementar un identificador único para un UIViewController usando una categoría.

Supongo que la forma "más limpia" en términos de architecture de layout sería quizás una variedad de ViewControllers. (Podría administrarse en el delegado de la aplicación). Sin embargo, hay consideraciones de memory: en el iPhone es probable que desee crear y destruir los controlleres de vista según sea necesario. La matriz podría contener el identifier y quizás alguna otra información relacionada con el model para volver a crear los controlleres según sea necesario.

Lástima que no haya storyboardIdentifier de propiedad de UIViewController. Se pueden crear instancias con este ID, pero sería útil si el controller de vista puede consultar su ID.