如题,开一下脑洞,各种开发语言能不能把接口变的可以new,实现IOC的效果,而具体实例化的类型是通过类似我们现在使用的IOC框架的注入方式来确定的。
人生最曼妙的风景,竟是内心的淡定与从容!
既然是注入進來的,你還要new interface幹什麼用?
new interface並沒有什麼意義啊
是不是想將IoC做為語言特性,或者說原生支援?
new Interface的話,其實基於JVM的實作的自訂語言是可以的。
除了原始碼,再加一個設定檔控制。 設定檔做為預處理控制。 編譯時,先預處理出純粹的源碼檔案(物件已經註入)。 之後再編譯預處理後的源碼檔。 以上是靜態注入(編譯時注入)的處理方式。
另外,明顯,由Spring 可以知道用反射來做出動態注入的效果是可以的,只要在語義分析上做相應的修改並寫一個可用的IoC標準庫就好。
說是容易,只是實作起來不簡單。
既然是注入進來的,你還要new interface幹什麼用?
new interface並沒有什麼意義啊
是不是想將IoC做為語言特性,或者說原生支援?
new Interface的話,其實基於JVM的實作的自訂語言是可以的。
除了原始碼,再加一個設定檔控制。
設定檔做為預處理控制。
編譯時,先預處理出純粹的源碼檔案(物件已經註入)。
之後再編譯預處理後的源碼檔。
以上是靜態注入(編譯時注入)的處理方式。
另外,明顯,由Spring 可以知道用反射來做出動態注入的效果是可以的,只要在語義分析上做相應的修改並寫一個可用的IoC標準庫就好。
說是容易,只是實作起來不簡單。