freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件工程課程設計小論文之面向?qū)ο蠹夹g(shù)(專業(yè)版)

2024-09-17 12:41上一頁面

下一頁面
  

【正文】 收獲還是有的,只是沒有通過實踐去檢驗自己的收獲。檢查對象的狀態(tài)(由對象的屬性值表示),以確定是否存在錯誤。當然,傳統(tǒng)的黑盒測試方法(見本書第7章)也可用于設計確認測試用例,但是,對于面向?qū)ο蟮能浖碚f,主要還是根據(jù)動態(tài)模型和描述系統(tǒng)行為的腳本來設計確認測試用例。這就說明,當測試面向?qū)ο筌浖r,傳統(tǒng)的單元測試方法是不適用的,不能再在“真空”中(即孤立地)測試單個操作。 先測試后優(yōu)化為在效率與健壯性之間做出合理的折衷,應該在為提高效率而進行優(yōu)化之前,先測試程序的性能,人們常常驚奇地發(fā)現(xiàn),事實上大部分程序代碼所消耗的運行時間并不多。 精心確定公有方法公有方法是向公眾公布的接口。使用這種途徑通常額外定義一個抽象基類,并在這個抽象基類中定義公用方法。策略方法通常緊密依賴于具體應用,這類方法比較容易編寫,也比較容易理解。 良好的面向?qū)ο蟪绦蛟O計風格,既包括傳統(tǒng)的程序設計風格準則,也包括為適應面向?qū)ο蠓椒ㄋ赜械母拍?例如,繼承性)而必須遵循的一些新準則。因此應該考慮語言本身是否提供了這種工具,或者該語言能否與現(xiàn)有的這類工具很好地集成起來。如果程序語言提供一種能抽象出這類共性的機制,則對減少冗余和提高可重用性是大有好處的所謂參數(shù)化類,就是使用一個或多個類型去參數(shù)化一個類的機制,有了這種機制,程序員就可以先定義一個參數(shù)化的類模板(即在類定義中包含以參數(shù)形式出現(xiàn)的一個或多個類型),然后把數(shù)據(jù)類型作為參數(shù)傳遞進來,從而把這個類模板應用在不同的應用程序中,或用在同一應用程序的不同部分。這是因為類庫中提供了更高效的算法和更好的數(shù)據(jù)結(jié)構(gòu),例如,程序員已經(jīng)無須編寫實現(xiàn)哈希表或平衡樹算法的代碼了,類庫中已經(jīng)提供了這類數(shù)據(jù)結(jié)構(gòu),而且算法先進、代碼精巧可靠。 類型檢查 程序設計語言可以按照編譯時進行類型檢查的嚴格程度來分類。允許動態(tài)創(chuàng)建對象,就意味著系統(tǒng)必須處理內(nèi)存管理問題,如果不及時釋放不再需要的對象所占用的內(nèi)存,動態(tài)存儲分配就有可能耗盡內(nèi)存。 可維護性 盡管人們反復強調(diào)保持文檔與源程序一致的必要性,但是,在實際工作中很難做到交付兩類不同的文檔,并使它們保持彼此完全一致。但是,面向?qū)ο蟪绦蛑刑赜械姆庋b、繼承和多態(tài)等機制,也給面向?qū)ο鬁y試帶來一些新特點,增加了測試和調(diào)試的難度。因此,直接支持面向?qū)ο笤O計范式的面向?qū)ο蟪绦蛘Z言、開發(fā)環(huán)境及類庫,對于面向?qū)ο髮崿F(xiàn)來說是非常重要的。所有非面向?qū)ο笳Z言都不支持一般特殊結(jié)構(gòu)的實現(xiàn),使用這類語言編程時要么完全回避繼承的概念,要么在聲明特殊化類時,把對一般化類的引用嵌套在它里面。因此,在選擇編程語言時,應該考慮的首要因素,是在供選擇的語言中哪個語言能最好地表達問題域語義。這種機制使得程序員能夠方便地構(gòu)造和喚醒釋放內(nèi)存的操作,卻又不是垃圾收集機制。通常使用強類型編譯型語言開發(fā)軟件產(chǎn)品,使用弱類型解釋型語言快速開發(fā)原型。希望長期保存數(shù)據(jù)主要出于以下兩個原因: (1) 為實現(xiàn)在不同程序之間傳遞數(shù)據(jù),需要保存數(shù)據(jù); (2) 為恢復被中斷了的程序的運行,首先需要保存數(shù)據(jù)。編譯程序或解釋程序是最基本、最重要的軟件工具。但是,最終決定選用哪種面向?qū)ο笳Z言的實際因素,往往是諸如成本之類的經(jīng)濟因素而不是技術(shù)因素。為做到外部重用,則必須有長遠眼光,需要反復考慮精心設計。為此需要從策略方法中提取出具體參數(shù),作為調(diào)用實現(xiàn)方法的變元。繼承機制使用不當將造成程序難于理解、修改和擴充。 提高健壯性 程序員在編寫實現(xiàn)方法的代碼時,既應該考慮效率,也應該考慮健壯性。用軟件測試的專業(yè)術(shù)語描述,就是從單元測試開始,逐步進入集成測試,最后進行確認測試和系統(tǒng)測試。這種策略把響應系統(tǒng)的一個輸入或一個事件所需要的那些類集成起來。面向?qū)ο蟮某绦蛟O計語言非常適合用來實現(xiàn)面向?qū)ο笤O計結(jié)果。必須在實踐中努力探索適合于面向?qū)ο筌浖母行У臏y試方法。 面向?qū)ο髮崿F(xiàn)主要包括兩個方面的工作:把面向?qū)ο笤O計結(jié)果,翻譯成用某種程序語言書寫的面向?qū)ο蟪绦?;測試并調(diào)試面向?qū)ο蟮某绦颉? XXX:我們小組的論文題目是“面向?qū)ο蟮膶崿F(xiàn)”,是為了把面向?qū)ο笤O計結(jié)果順利地轉(zhuǎn)變成面向?qū)ο蟪绦?。但是,面向?qū)ο鬁y試的策略和技術(shù)與傳統(tǒng)測試有所不同,測試的焦點從過程構(gòu)件(傳統(tǒng)模塊)移向了對象類。集群測試(cluster testing)是面向?qū)ο筌浖蓽y試的一個步驟。一個類可以包含一組不同的操作,而一個特定的操作也可能存在于一組不同的類中。任何一個接收用戶輸入數(shù)據(jù)的方法,對其接收到的數(shù)據(jù)都必須進行檢查,即使發(fā)現(xiàn)了非常嚴重的錯誤,也應該給出恰當?shù)奶崾拘畔?,并準備再次接收用戶的輸入? 提高可擴充性 下列的面向?qū)ο蟪绦蛟O計準則也有助于提高可擴充性: . 封裝實現(xiàn)策略 應該把類的實現(xiàn)策略(包括描述屬性的數(shù)據(jù)結(jié)構(gòu)、修改屬性的算法等)封裝起來,對外只提供公有的接口,否則將降低今后修改數(shù)據(jù)結(jié)構(gòu)或算法的自由度。 (1) 調(diào)用子過程。一般說來,功能相似的方法應該有一致的名字、參數(shù)特征(包括參數(shù)個數(shù)、類型和次序)、返回值類型、使用條件及出錯條件等。隨著類庫的日益成熟和豐富,在開發(fā)新應用系統(tǒng)時,需要開發(fā)人員自己編寫的代碼將越來越少。這樣做可能會使得調(diào)試器不能理解原始的源程序。然后,可以從“可存儲的類”中派生出需要持久保存的對象,該對象自然繼承了對象存儲管理功能。在類庫中還可以找到實現(xiàn)各種關(guān)聯(lián)的類。不論使用何種語言,程序員都應該盡力避免出現(xiàn)名字沖突。另一類是混合型面向?qū)ο笳Z言,也就是在過程語言的基礎上增加面向?qū)ο髾C制,如C++等語言。這種表示方法應該從問題域到OOA,從OOA到OOD,最后從OOD到面向?qū)ο缶幊?OOP),始終穩(wěn)定不變。檢查對象的狀態(tài)(由對象的屬性值表示),以確定是否存在錯誤。應該設計測試序列以保證相關(guān)的操作受到充分測試。從面向?qū)ο笥^點看來,能夠更完整、更準確地表達問題域語義的面向?qū)ο笳Z言的語法是非常重要的,因為這會帶來下述幾個重要優(yōu)點: 一致的表示方法 從前面章節(jié)的講述中可以知道,面向?qū)ο箝_發(fā)基于不隨時間變化的、一致的表示方法。一類是純面向?qū)ο笳Z言,如Smalltalk和Eiffel等語言。某些語言拒絕接受有名字沖突的程序,另一些語言提供了解決沖突的協(xié)議。類庫中往往包含實現(xiàn)通用數(shù)據(jù)結(jié)構(gòu)(例如,動態(tài)數(shù)組、表、隊列、棧、樹等等)的類,通常把這些類稱為包容類。通過在類庫中增加對象存儲管理功能,可以在不改變語言定義或不增加關(guān)鍵
點擊復制文檔內(nèi)容
數(shù)學相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1