標題: 使用最大衍生物件進行型態轉換之分析
Analysis of Type Transformation - using maximally derived object
作者: 鄧有聲
Daniel Y.S. Teng
蘇元良;羅濟群
Yuan-Liang Su;Chi-Chun Lo
資訊管理研究所
關鍵字: 型態轉換;物件導向分析;最大衍生物件;;Type Transformation;Object Oriented Analysis;Maximally Derived Object;
公開日期: 1994
摘要: 類別之間的關連關係(Association),可以被運用的範圍極廣,但也最為 抽象。只要是系統想處理的關連,如書與圖書館之間的收藏關係;經理與 部門之間的領導關係,都能用關連關係來描述。本論文指出在毛毛蟲和蝴 蝶類別之間的蛻化關係,比收藏或領導的語意內容更強,這種關係不僅僅 是一種「關連」而已。它有需要區別出來成為轉換關係,甚至如「繼承」 或「使用」關係一樣,提高到程式語言可以支援的層次。本文探討轉換關 係的內涵與分類,也分析物件內狀態改變的種類,來了解可能形成轉換關 係的情形,並且給予轉換關係一個明確的定義。在加入轉換關係後,也探 討將會引發什麼樣的問題。本論文提出型態轉換的方法,可以運用C++現 有的語言特性,製作出類別的轉換關係,並解決因支援轉換所引發的問題 。它的作法是給予轉換物件很多不同的型態(Type),每個型態都有自己的 屬性和行為,並且允許改變物件的型態來達成轉換功能。它是運用繼承關 係來結合不同的類別(Class),並用最大衍生類別 (Maximally Derived Class)產生轉換物件的實例(Instance)。文末也探討運用轉換關係的好處 、適合運用轉換關係的場合,以及製作轉換物件的建議步驟。 The association relationships between classes can be used widely, but they are also most likely to be abused. The transaction of any kind of relationship, such as between library and books, or manager and department, can be described as an association. This thesis points out that the association between worm and butterfly is more complex than the one between library and books, or manager and department. This relationship is not only an association but also a transformation. It is necessary to differentiate it from a simple association relationship, in that it should be supported at programming language level, such as "inheritance" and "use" which already have this support. This study, therefore, discusses the contents and categories of transformation relationships. It analyzes the nature of changes of the states of objects to understand the causes (reasons, sources and situations) of transformation relationships between classes. It also gives transformation a definition. Further, after having added transformation, it discusses the problems which arose. This research proposes an approach of "Type Transformation". "Type Transformation" can use the existing features of C++ to implement the transformation relationships between classes and to solve the resulting problems. Implementation is achieved by giving transformable objects many different types which each have their own attributes and behaviors. The method allows types of objects to be interchangable. It uses "inheritance" to combine different types of classes and uses maximally derived class to instance transformable objects. Lastly, it discusses the benefits of transformation relationships and the occations when transformation can be applied. Finally, it suggests the steps to implement transformation.
URI: http://140.113.39.130/cdrfb3/record/nctu/#NT830396022
http://hdl.handle.net/11536/59129
顯示於類別:畢業論文