Rellene dinámicamente las propiedades del objeto con valores de diccionario

En Objective-C, tengo un diccionario:

firstName -> John
lastName -> Smith
age -> 34

y un objetoPerson que tiene variables y propiedades de instancia correspondientes (que manejan la administración de memoria de manera adecuada). Me gustaría crear un inicializador de conveniencia que tome un diccionario como argumento y complete todos los campos de objeto (a través de sus propiedades para fines de administración de memoria) a partir de las claves / valores del diccionario, en lugar de hacer manualmente algo como:

obj.firstName = [dict objectForKey:@"firstName"];
obj.lastName = [dict objectForKey:@"lastName"];
obj.age = [dict objectForKey:@"age"];
....

¿Cómo puedo hacer esto

Respuestas a la pregunta(1)

Su respuesta a la pregunta