二、對象的所在地——容器

對象的所在地,容器

 

“一切都是對象”,對象處於何地?

 

有一種對象叫做“容器”。這是一個我們需要優先考慮和架設的對象,如果不優先,“其他對象”將無容身之地。

 

關鍵性的對象不會是曇花一現,除非整個系統都是一個虛脫的系統。對象的生命週期應該得到維持。

 

一、用容器對象架構程序的層次結構。

        一所學校有很多院系,是學生學習、老師育人的場所,院系能夠對學生進行分類,便於他們的學習,也便於老師排課和知識傳授。沒有這些機構,一切將變得無序甚至無效。這些機構是學生和老師的容身處,也是學生老師履行職責和義務的場地。

       對一個清晰的系統來說,容器對象要優先考慮。其一:對象應該得到管理;其二:對象之間的活動場景也應該得到規範化,如同排課職責分配。

 

二、對象的狀態和生命週期得以保證

        不同時期,對象有不同的狀態,對象從創建到消亡都有一個過程,這需要容器的干預才能得以保證。

 

三、對象可以在多個容器中,可以加入容器、離開容器

       如一個學生可以到多個教室去上課,在4年中在一所學校讀書,在同一個宿舍睡覺。

 

四、對象和對象的交互總在容器中

       前面說過“對象之間的活動場景”,對象和對象的交互地點也在容器中,我們要在容器中規範場景職責,如在教室中主要的場景就是“授課”,但不要在教室中發生“喫飯”這樣的場景,雖然教室的結構可以兼容喫飯的場景,但“教室這個名詞”應該能幫助我們做到儘量的規範化——清晰。

 

五、每個對象都是容器

       面向對象方式的層次特性能讓設計變得松耦合,這個特性用“容器”來進行突出,更加的形象和讓人注意。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章