请问一下大家,自己开发控件难不难呀!还有文件流和面向对像是什么呀!我都搞不懂,请各侠大指导指导!

解决方案 »

  1.   

    面向對象方法綜述
    陳小群博士
    [返回]
      八十年代末以來,隨著面向對象技朮成為研究的熱點出現了几十種支持軟件開發的面向對象方法。其中,Booch, Coad/Yourdon, OMT, 和Jacobson的方法在面向對象軟件開發界得到了廣泛的認可。特別值得一提的是統一的建模語言UML
    (Unified Modeling Language),該方法結合了Booch, OMT, 和Jacobson方法
    的優點,統一了符號體系,并從其它的方法和工程實踐中吸收了許多經過實際檢驗的概念和技朮。UML方法自去年提出后到現在已發展到1.1版,并已提交給對象管理集團OMG,申請成為面向對象方法的標准。  面向對象方法都支持三種基本的活動:識別對象和類,描述對象和類之間的關系,以及通過描述每個類的功能定義對象的行為。  為了發現對象和類,開發人員要在系統需求和系統分析的文檔中查找名詞和名詞短語,包括可感知的事物(汽車、壓力、傳感器)﹔角色(母親、教師、政治家)﹔事件(著陸、中斷、請求)﹔互相作用(借貸、開會、交叉)﹔人員﹔場所﹔組織﹔設備﹔和地點。通過瀏覽使用系統的腳本發現重要的對象和其責任,是面向對象分析和設計過程的初期重要的技朮。  當重要的對象被發現后,通過一組互相關聯的模型詳細表示類之間的關系和對象的行為,這些模型從四個不同的側面表示了軟件的體系結構:靜態邏輯、動態邏輯、靜態物理和動態物理。  靜態邏輯模型描述實例化(類成員關系)、關聯、聚集(整體/部分)、和一般化(繼承)等關系。這被稱為對象模型。一般化關系表示屬性和方法的繼承關系。定義對象模型的圖形符號體系通常是從用于數據建模的實體關系圖導出的。對設計十分重要的約束,如基數(一對一、一對多、多對多),也在對象模型中表示。  動態邏輯模型描述對象之間的互相作用。互相作用通過一組協同的對象,對象之間消息的有序的序列,參與對象的可見性定義,來定義系統運行時的行為。Booch方法中的對象交互作用圖被用來描述重要的互相作用,顯示參與的對象和對象之間按時間排序的消息。可見性圖用來描述互相作用中對象的可見性。對象的可見性定義了一個對象如何處于向它發送消息的方法的作用域之中。例如,它可以是方法的參數、局部變量、新的對象、或當前執行方法的對象的部分。  靜態物理模型通過模塊描述代碼的布局。動態物理模型描述軟件的進程和線程體系結構。以下章節我們將簡要介紹上述面向對象方法,并對這些方法進行比較。***********************************************************************Booch方法的過程包括以下步驟:
      . 在給定的抽象層次上識別類和對象
      . 識別這些對象和類的語義
      . 識別這些類和對象之間的關系
      . 實現類和對象  這四種活動不僅僅是一個簡單的步驟序列,而是對系統的邏輯和物理視圖不斷細化的迭代和漸增的開發過程。  類和對象的識別包括找出問題空間中關鍵的抽象和產生動態行為的重要機制。開發人員可以通過研究問題域的朮語發現關鍵的抽象。語義的識別主要是建立前一階段識別出的類和對象的含義。開發人員確定類的行為(即方法)和類及對象之間的互相作用(即行為的規范描述)。該階段利用狀態轉移圖描述對象的狀態的模型,利用時態圖(系統中的時態約束)和對象圖(對象之間的互相作用)描述行為模型。  在關系識別階段描述靜態和動態關系模型。這些關系包括使用、實例化、繼承、關聯和聚集等。類和對象之間的可見性也在此時確定。
      在類和對象的實現階段要考慮如何用選定的編程語言實現,如何將類和對象組織成模塊。  在面向對象的設計方法中,Booch強調基于類和對象的系統邏輯視圖與基于模塊和進程的系統物理視圖之間的區別。他還區別了系統的靜態和動態模型。然而,他的方法偏向于系統的靜態描述,對動態描述支持較少。  Booch方法的力量在于其丰富的符號體系,包括:
      . 類圖(類結構-靜態視圖)
      . 對象圖(對象結構-靜態視圖)
      . 狀態轉移圖(類結構-動態視圖)
      . 時態圖(對象結構-動態視圖)
      . 模塊圖(模塊體系結構)
      . 進程圖(進程體系結構)  用于類和對象建模的符號體系使用注釋和不同的圖符(如不同的箭頭)表達詳細的信息。Booch建議在設計的初期可以用符號體系的一個子集,隨后不斷添加細節。對每一個符號體系還有一個文本的形式,由每一個主要結構的描述模板組成。符號體系由大量的圖符定義,但是,其語法和語義并沒有嚴格地定義。***********************************************************************Rumbaugh的OMT方法從三個視角描述系統,相應地提供了三種模型,對象模型,動態模型和功能模型。對象模型描述對象的靜態結構和它們之間的關系。主要的概念包括:
      . 類
      . 屬性
      . 操作
      . 繼承
      . 關聯(即關系)
      . 聚集動態模型描述系統那些隨時間變化的方面,其主要概念有:
      . 狀態
      . 子狀態和超狀態
      . 事件
      . 行為
      . 活動功能模型描述系統內部數據值的轉換,其主要概念有:
      . 加工
      . 數據存儲
      . 數據流
      . 控制流
      . 角色(源/潭)該方法將開發過程分為四個階段:
    1 分析
      基于問題和用戶需求的描述,建立現實世界的模型。分析階段的產物有:
      . 問題描述
      . 對象模型=對象圖+數據詞典
      . 動態模型=狀態圖+全局事件流圖
      . 功能模型=數據流圖+約束2 系統設計
      結合問題域的知識和目標系統的體系結構(求解域),將目標系統分解為子系統。3 對象設計
      基于分析模型和求解域中的體系結構等添加的實現細節,完成系統設計。主要產物包括:
      . 細化的對象模型
      . 細化的動態模型
      . 細化的功能模型4 實現
      將設計轉換為特定的編程語言或硬件,同時保持可追蹤性、靈活性和可擴展性。***********************************************************************Coad/Yourdon方法嚴格區分了面向對象分析OOA和面向對象設計OOD。該方法利用五個層次和活動定義和記錄系統行為,輸入和輸出。這五個層次的活動包括:
      . 發現類及對象。描述如何發現類及對象。從應用領域開始識別類及對象,形成整個應用的基礎,然后,據此分析系統的責任。
      . 識別結構。該階段分為兩個步驟。第一,識別一般-特殊結構,該結構捕獲了識別出的類的層次結構﹔第二,識別整體-部分結構,該結構用來表示一個對象如何成為另一個對象的一部分,以及多個對象如何組裝成更大的對象。
      . 定義主題。主題由一組類及對象組成,用于將類及對象模型划分為更大的單位,便于理解。
      . 定義屬性。其中包括定義類的實例(對象)之間的實例連接。
      . 定義服務。其中包括定義對象之間的消息連接。  在面向對象分析階段,經過五個層次的活動后的結果是一個分成五個層次的問題域模型,包括主題、類及對象、結構、屬性和服務五個層次,由類及對象圖表示。五個層次活動的順序并不重要。面向對象設計模型需要進一步區分以下四個部分:
      .問題域部分(PDC)。面向對象分析的結果直接放入該部分。
      .人機交互部分(HIC)。這部分的活動包括對用戶分類,描述人機交互的腳本,設計命令層次結構,設計詳細的交互,生成用戶界面的原型,定義HIC類。
      .任務管理部分(TMC)這部分的活動包括識別任務(進程)、任務所提供的服務、任務的優先級、進程是事件驅動還是時鐘驅動、以及任務與其它進程和外界如何通信。
      .數據管理部分(DMC)。這一部分依賴于存儲技朮,是文件系統,還是關系數據庫管理系統,還是面向對象數據庫管理系統。***********************************************************************Jacobson方法與上述三種方法有所不同,它涉及到整個軟件生命周期,包括需求分析、設計、實現和測試等四個階段。需求分析和設計密切相關。需求分析階段的活動包括定義潛在的角色(角色指使用系統的人和與系統互相作用的軟、硬件環境),識別問題域中的對象和關系,基于需求規范說明和角色的需要發現use case,詳細描述use case。設計階段包括兩個主要活動,從需求分析模型中發現設計對象,以及針對實現環境調整設計模型。第一個活動包括從use case的描述發現設計對象,并描述對象的屬性、行為和關聯。在這里還要把use case的行為分派給對象。  在需求分析階段的識別領域對象和關系的活動中,開發人員識別類、屬性和關系。關系包括繼承、熟悉(關聯)、組成(聚集)和通信關聯。定義use case的活動和識別設計對象的活動,兩個活動共同完成行為的描述。Jacobson方法還將對象區分為語義對象(領域對象)、界面對象(如用戶界面對象)和控制對象(處理界面對象和領域對象之間的控制)。  在該方法中的一個關鍵概念就是use case。use case是指行為相關的事務(transaction)序列,該序列將由用戶在與系統對話中執行。因此,每一個use case就是一個使用系統的方式,當用戶給定一個輸入,就執行一個use case的實例并引發執行屬于該use case的一個事務。基于這種系統視圖,Jacobson將use case模型與其它五種系統模型關聯:
      . 領域對象模型。use case模型根據領域來表示。
      . 分析模型。use case模型通過分析來構造。
      . 設計模型。use case模型通過設計來具體化。
      . 實現模型。該模型依據具體化的設計來實現use case模型。
      . 測試模型。用來測試具體化的use case模型。
      

  2.   

    汗~~~你找本 《Delphi5开发人员指南》看看先....-_-!!