Voulez-vous utiliser IoC comme fonctionnalité de langage ou comme support natif ?
Pour la nouvelle interface, un langage personnalisé basé sur l'implémentation JVM est réellement possible.
En plus du code source, ajoutez un contrôle de fichier de configuration. Le fichier de configuration sert de contrôle de prétraitement. Lors de la compilation, les fichiers de code source pur sont prétraités (des objets ont été injectés). Compilez ensuite le fichier de code source prétraité. Ce qui précède explique comment l'injection statique (injection au moment de la compilation) est gérée.
De plus, évidemment, depuis Spring, nous pouvons savoir qu'il est possible d'utiliser la réflexion pour obtenir l'effet d'injection dynamique, à condition d'apporter les modifications correspondantes dans l'analyse sémantique et d'écrire une bibliothèque standard IoC utilisable.
C’est facile à dire, mais ce n’est pas facile à mettre en œuvre.
Puisqu'il est injecté, pourquoi avez-vous besoin d'une nouvelle interface ?
la nouvelle interface n'a aucun sens
Voulez-vous utiliser IoC comme fonctionnalité de langage ou comme support natif ?
Pour la nouvelle interface, un langage personnalisé basé sur l'implémentation JVM est réellement possible.
En plus du code source, ajoutez un contrôle de fichier de configuration.
Le fichier de configuration sert de contrôle de prétraitement.
Lors de la compilation, les fichiers de code source pur sont prétraités (des objets ont été injectés).
Compilez ensuite le fichier de code source prétraité.
Ce qui précède explique comment l'injection statique (injection au moment de la compilation) est gérée.
De plus, évidemment, depuis Spring, nous pouvons savoir qu'il est possible d'utiliser la réflexion pour obtenir l'effet d'injection dynamique, à condition d'apporter les modifications correspondantes dans l'analyse sémantique et d'écrire une bibliothèque standard IoC utilisable.
C’est facile à dire, mais ce n’est pas facile à mettre en œuvre.