Estoy intentando encontrar una forma de "etiquetar" clases que se escribirán más tarde para poder encontrarlas en tiempo de ejecución, pero sin aplicarlas el uso de una clase primaria específica. Actualmente estoy buscando tal vez aplicar un protocolo y luego encontrar todas las clases que tienen ese protocolo.Encontrar clases que declaran que se ajustan a un protocolo específico utilizando el tiempo de ejecución de Objective-C
Pero no sé cómo.
¿Alguien sabe si es posible encontrar todas las clases que implementan un protocolo específico en tiempo de ejecución? o alternativamente, ¿hay una forma mejor de "etiquetar" las clases y encontrarlas?
La respuesta de Aroth funcionará, pero le sugiero que vuelva a visitar su arquitectura y elimine la necesidad de hacer tal cosa. En general, tales arquitecturas débilmente acopladas llevarán a un código muy frágil y dolores de cabeza significativos de mantenimiento/refactorización en el futuro. Diversión, sin duda, pero en última instancia poco práctico. – bbum
Normalmente lo haría, pero lo que estoy jugando es algo similar a los conceptos de springframework. Efectivamente estoy codificando para operar clases que no existirán hasta que mi marco esté incluido en otro proyecto. Lo que intento hacer es permitir que el desarrollador haga uso de lo que estoy haciendo sin el requisito de extender mis clases, lo que podría resultar problemático si tienen su propia jerarquía. Por lo tanto, estoy buscando formas de "etiquetar" las clases para que mi framework sepa que funciona con ellas. – drekka
Cool. Sugiero que proporciones algunas clases base abstractas y que los otros desarrolladores hereden de eso, anulando la funcionalidad según sea necesario. Además, tener a los desarrolladores registrando efectivamente sus clases con su marco también es útil; eso les da la oportunidad de registrar condicionalmente algunas clases y no otras, dependiendo de la configuración. – bbum