2009-05-19 45 views
0

我已經使用過Spring,並且我已經看過Guice,我認爲這些都是對語言的頗爲突兀的擴展。我堅信編程語言本身需要適應與依賴注入,測試等更緊密相關的模式,那麼爲什麼不能採用基於樣式表的方法呢?通過允許多個「樣式」,您可以爲不同目的定義對象的配置。也許類和其他優點可以讓你指定比簡單的類/方法名稱匹配更強大的事務範圍。我們對待接口和實現就像處理內容和樣式一樣,爲什麼不以相似的方式處理呢?

這對於任何人來說都是一個好主意嗎?另外,您是否認爲DI和AOP將作爲核心功能集成到未來的語言中,而不是事後考慮?我只是在想,而且看起來像接口 - >實現幾乎完全符合data - > style。

想法?

回答

10

這是一個非常古老的想法,首先在20世紀80年代初實施。然後通過術語「配置編程」,「軟件集成電路」或「體系結構描述語言」知道它。 「依賴注入」是當企業開發人員最近重新發現這些想法時創造的新詞。例如,看看Conic [1]和Regis/Darwin [2]系統。這些系統被用來編寫工業控制軟件,並直接影響軟件如何寫入Phillips的電視機。 Darwin的一個有趣功能是該語言具有文本和圖形表示[3]和formal semantics

Conic和Regis/Darwin比現有的DI框架做了更多的工作,因爲它們被用來構建分佈式系統:配置語言被編譯成跨機器網絡並行部署系統的程序(正式語義定義了這個「闡述」過程運作)。相比之下,Spring,Guice等僅在單個地址空間內配置對象,並且將分佈式組件連接到程序員面臨更大的困難。

這個想法的另一個重新發現是用於傳感器網絡應用的TinyOS操作系統,儘管它沒有一個清晰的組件和配置的概念模型。

  1. 克萊默,J.,馬吉,J.,斯洛曼,M.S.,和李斯特,A.,二次曲線:綜合辦法,以分佈式計算機控制系統,IEE論文集,130,鉑。 E,(1983),1-10。 Magee,J.,Dulay,N。和Kramer,J。,Regis:A constructive development environment for distributed programs,Distributed Systems Engineering Journal,Vol.23, IEEE計算機,22(10),(1989),53-63頁的圖形化配置程序設計,Kramer,J.,Magee,J。和Ng,K.,1994年9月,304-312
  2. 。 65。

**可能「現在」是。

+0

哇......我認爲這是我第一次看到有人在SO答案中包含正式引文:) – Zifre 2009-05-19 23:58:47

相關問題