close
一把刀實用查詢📘

電腦詞典/面向對象技術 Object-Oriented echnology



內容目錄: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


【名稱】:面向對象技術 Object-Oriented echnology

【解釋】:  面向對象技術使軟件的開發超越了過程式編程,而進入了簡化應用程式開發的可重用編程世界。不象舊的編程方式,當程式的體積增長時,程式維護和調試並不變得更複雜。對象技術在兩個級別發揮作用:

        在數據級別,對象技術可以集成一個機構中的許多不同類型的信息,過去的信息已經不再兼容了。

        在程式開發級別,對象技術提供模塊化程式構造,這時,程式員在現有對象的基礎之上進行開發。對象可以被其他對象再使用,以利用它們的過程,從而消除了當再次需要它們的時候,必須每次都重寫這些代碼。

       由於無需改變或分解整個系統,所以再設計或擴展系統是很容易的。實際上,是放棄或修改這些模塊,並且增加新的模塊以提供增強的功能。

       一個對象是一個完整的數據分組,它包括對數據進行處理的功能。在一個面向對象的環境,對象的數目是數不清的。它們可能包括一個數據庫的記錄、一個檔案、一個物理資源、甚至是一個用戶(它是用戶的登錄帳戶)。為了使開發人員使用面向對象編程語言工作,對象是一個自滿足模塊,它包含數據、以及數據的結構、和處理數據的功能。

       對象可以是下面情況的任何之一:

        在一個面向對象操作系統中實現一個進程的代碼,例如驗證安全權限。

        程式員和開發人員用於彙編程式的預定義代碼模塊。

        來自一個應用程式的數據塊,如一個繪圖程式、電子表格或多媒體工具。

        在一個數據庫中的對象,例如庫存條目或顧客。

       在一個面向對象的數據庫中,對象可以代表跟蹤的商務中的實際實體,例如生產的產品、庫存、顧客和廠商。相應地,在面向對象的操作系統中,對象也是一些實體,如檔案、設備和用戶,或構成一個複合文檔的實體數據塊。在面向對象的環境,首先定義基本的對象,然後圍繞這些對象建造系統。

       有許多潛在對象,並且它們可以歸化到定義不同類型對象的層次化類(hierarchical classes)。父類可以對子類傳遞特性。讓我們來考慮一個類“people”,它擁有兩個子類“male”和“female”。這些子類又可以擁有它們自己的子類,如圖O-3所示。每個子類都有從它的父親處繼承來的綜合特徵,以及它們自己的專有特徵。另外,一些繼承來的特徵由於它們對子類不合適,而會被阻擋。

       這和計算機如何關聯昵?記住,現在我們在討論存儲許多不同數據類型,和訪問許多不同類型應用程式數據的途徑。通過按這種方式對數據分類,我們可以在一個對象內,直接包括進行抽取、顯示、合併和打印的過程數據。如果需要,對數據進行分類,可以簡化構造過程和改造(revision)過程。例如,一個數據塊對象可能包括一個對這些數據按特定的方式進行排序的過程,它可以被許多不同的使用這個數據的應用程式所激活。

       下面是對象類和對象實例:

        對象類 一個類定義了一組對象。類具有行為(be-havoir),它描述一個對象能夠做什麼以及做的方法(method),它們是可以對這個對象進行操作的程式和過程。

        對象實例 一個對象是一個類的一個實例,它代表一個現實物理“事件”,例如在一個財物系統數據庫中的一個顧客或一個庫存部分。類的繼承(class inheritance)是一個重要的概念,它為一個子類繼承它的父類的內置描述提供了途徑。在父類中使用的代碼被向下傳給這個類指定的一個類(子類)。

       例如,一個面向對象的數據庫可以有一個稱為“client”的類,這個類有兩個子類,分別稱為“company”和“individual”。首先,創立稱為“client”的對象。它包含一個結構和一些過程,這些過程處理數據和從對象之外獲得信息。然後,company和individual對象作為client的子類進行定義。作為一個子類,它們繼承client對象的結構和特徵,但是這些特徵中的一些可能被屏蔽,或可以增加一些附加特徵。例如,company子類可以具有一個特定的折算,而individua1子類卻不具有。如果你需要一個關於客戶的列表,你可以請求client對象進行列表。然而,如果你希望知道客戶的帳目平衡,你就需要從每個包含客戶平衡的子類對象獲得信息。

       對象包含數據和過程,並且當被請求時提供信息。想像一個包含數據的箱子,它有一些按鈕,你可以按這些按鈕來對數據運行過程。方法是,一些對對象進行操作的過程或程式,它們可以使對象根據對象的內部代碼和結構來以特定的形式進行動作。相似地,可以對對象的不同的類進行操作。有一個概念稱為多態性(poly-morphism)或重載(overloading)。使用多態性,一組通用的方法可以在很大範圍的類上進行操作。然而,具有相同名字和稱呼的方式卻可能誘發不同的事情。例如,在文本數據的“next”導致光標跳到下一個工作,而在電子表格的“next”卻導致光標跳到下一個單元。

       對象通過發送消息與另一個對象對話。這些消息在本質上是通過按下對象上的“按鈕”從對象請求過程。在一個網路環境,你可以查看和消息總線相連的對象,如圖O-4所示。消息傳遞為對象在一個面向對象的分佈式計算環境進行通信提供了一條有效途徑。消息傳遞是一種存儲再轉發方式,就象在電子函件系統中使用的那樣。消息被從一台計算機傳送到另一台計算機,直到它們抵達目的地。

       所有這些都加到軟件中,它們易於維護,並且在連續的基礎之上改進,即無需對整個系統進行重新設計。

        對象是可重用的,使得系統增長時,它易於加入系統,這是因為在現有對象中的代碼對創造新的對象是可重用的。

        對象系統是可擴展的,開發人員增加模塊,而模塊重用內置數據結構,無需重編譯操作系統。

        易於建造系統,這是因為面向對象對設計系統和實現系統提供了一條很自然的途徑。

        對象可以提供了一種通用接口,因而許多不同應用程式能夠訪問數據。

       也有許多不利的方面,包括大量增加了前端設計的時間,減低了性能和技術的不成熟。然而,隨著系統的成長和硬件的不斷強大,這些不利可以減退。這些缺陷,在對象系統可以在遍佈分佈網路上的許多不同類型的系統上向用戶提供數據這一事實面前,也會減少。

       Objects in Distributed Environments 分佈式環境中的對象

       對象技術被認為對實現未來的分佈式系統是很有生命力的。這樣,系統的複雜性可以通過實現消息傳遞服務(如對象請求代管器)的模型而簡化。對象只是簡單地請求服務,並且其他對象提供這些服務。開發人員不需要更多地知道對象將在上面通信的系統情況。事實上,對象技術為局部使用、將來擴展到異構分佈式環境、設計應用提供了途徑。

       在這一領域的發展包括:

        對象管理組織(OMG)的公用對象請求代管器體系結構(CORBA)是一種規範,它的設計是為對象產生和接收請求提供了途徑。

        Microsoft的對象鏈接和嵌入(OLE),為在單一臺式系統或一個網路上的應用程式共享數據提供了一條途徑。

        IBM的系統對象模型(SOM)和分佈式系統對象模型(DSOM)提供了低級對象語言

        OpenDoc是一種為共享文本、圖形和多媒體對象,而由Apple、Borland、IBM、Novel1和WordPerfect等公司開發的開發環境。

       相關條目:Cario;Common Object Model 公用對象模型;Common Object Request Broker Architecture 公用對象請求代管器體系結構;Compound Documents 複合文檔;Object Broker,DEC DEC的Object Broker;Object Linking and Embedding對象鏈接和嵌入;Object Management Architecture對象管理體系結構;Object-Oriented Interfaces and Operating Systems面向對象的接口和操作系統;Object Request Broker 對象請求代管器;Workplace OS。

【序號】:566

關于“電腦詞典/面向對象技術 Object-Oriented echnology”的用戶留言:

目前暫無留言

新增相關留言✍


返回首頁 | 📱 行動版 | 電腦版 💻
2009-2024 v1.22 a-j-e-3