Posted on 2005-12-02 22:37
canonical 閱讀(471)
評論(0) 編輯 收藏 所屬分類:
設計理論
接口(interface)總對應于某種明確的概念,它并不簡簡單單的等價于其成員函數的集合。有的接口如java.io.Serializable甚至沒有任何成員函數。接口最重要的就是名, 是對概念的甄別。接口發布出去之后才能夠被實現。當我們使用某個接口的時候,即使我們只用到其中部分函數,我們也必須負擔整個概念。雖說"有名,萬物之母", 并不是任何時候我們都需要名的。我們會說,就要那個,藍色的,這么高,... blabla, 對,就是這個(this)。模板(template)弱化了類型系統,它對系統的約束直接作用在細節行為上,降低了明確建模的需求,不需要概念的分解,合并,比接口更加靈活。但模板并不是任何時候都比接口更好。想象一下,我們拿著一張采購單,上面寫著需要某個物品,前面有個尖,后面有個帽,細長形,大概這么長,這么粗,上面有螺紋,螺距這么大,。。。這是...三號螺釘?嗯,最近有一種新產品,塑料材質的,你要不要試試。
模板與接口在某種程度上是互補的。