2016年4月26日 星期二

物件導向(4)迪米特法則

Low of Demeter: 就是最少知識原則。如果兩個類別不該直接通信,那麼這兩個類別就不應當發生直接的相互作用。如果其中一個類別需要調用另一個類別的某一個方法的話,可以透過第三者轉發這個調用。

這其實也包含在MVC架構裏。view由controller控制,而controller也取得model的資料。但model和view彼此無關。這樣view可以reuse, model和view都可以分開維護和發展。

換句話說,軟體有更好的可維護性與適應性。因為某甲較少依賴某乙的內部結構,則可以改變容器(container)而不用改變調用者(caller)。

所以這仍然是基於物件導向的精神產生的原則。

沒有留言:

張貼留言