天天看點

作業4

題目要求:

OOA(Object Oriented Analysis,面向對象分析):

從客觀存在的事務和事務之間的關系,歸納出有關對象(包括對象的屬性和行為)以及對象之間的聯系,并将具有相同屬性和行為的對象用一個類(class)來表示。建立一個能夠反映真實情況的需求模型。

OOD(Object OrientedDesign,面向對象設計):

将面向對象分析階段形成的需求模型進一步具體設計。如類的設計(繼承、派生、類與類之間的消息協作)、算法的設計等。采取通用的工具,如流程圖、類圖等來描述。

題目描述:

采取面向對象的方法,四則運算自動出題軟體,根據需求可以劃分為幾個類?每個類具有什麼屬性?每個類具有什麼行為?

類與類之間是如何進行協作的?誰給誰發送消息?誰持有誰的引用?

該自動出題軟體采取何種算法或者是如何實作的?可以采用流程圖描述的方法。

作業:

一.代碼的分解

我認為,所有的代碼都可以分成三個部分:輸入部分,操作部分,輸出部分;

輸入主要的作用是填入操作部分中的未知參數,而需要輸出的,往往是操作部分的過程資料和最終資料 是以其中操作部分是整個代碼的核心部分。

以四則運算為例:

輸入部分:語言的選擇、題目數量;

操作部分:題目的生成、計算正确的答案、将正确答案與輸入的答案比較(資料的統計)

輸出部分:生成的題目、正确的答案、統計的資料

綜上,類大緻可分為三中,輸入類、操作類、輸出類,但是,上面說過,輸出的内容大多是操作的資料是以,輸出類可以省略。

1.輸入類:(使用者輸入類,檔案引入類)

作業4
作業4

2.操作類:(生成類,統計類(在四則運算中這兩者可以合并)

作業4
作業4

輸入類給題目生成類發送題目數量的消息,發送語言給輸出類,而輸出類需要引用生成類的題目,答案及統計資料

二.流程圖

作業4