<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java, Only Java!

    統(tǒng)計

    留言簿(20)

    積分與排名

    好友空間

    文檔技巧

    閱讀排行榜

    評論排行榜

    《Java大學教程》—第9章 軟件質(zhì)量

    軟件質(zhì)量:可維護性、可靠性、健壯性、可用性。

    9.3 可維護性
    系統(tǒng)維護(maintaining)是指根據(jù)需求的變化更新現(xiàn)有系統(tǒng)的過程

    9.3.1    封裝的重要性
    連鎖反應(yīng):對系統(tǒng)某一部分的改變可能會對系統(tǒng)的其余部分產(chǎn)生影響,導致系統(tǒng)錯誤。
    面向?qū)ο蟮姆庋b原則保證了面向蝗程序易于維護,因為封裝原則減弱了連鎖反應(yīng)的影響:
    每個對象都應(yīng)該在對象內(nèi)部包含工作的全部細節(jié);所有的數(shù)據(jù)都應(yīng)該隱藏在對象內(nèi)部;保證對象的任何改變都不會影響到系統(tǒng)的其余部分。

    9.3.2    文檔
    在開發(fā)面向?qū)ο蟪绦虻臅r候,設(shè)計文檔應(yīng)該包含以下內(nèi)容:
    *    完整的類圖
    *    清晰的方法定義(參數(shù)和返回類型,必要時包含偽代碼)

    代碼內(nèi)文檔應(yīng)當包含以下信息:
    *    用以描述代碼含義的注釋信息
    *    有意義的數(shù)據(jù)名稱
    *    用常量替換固定的數(shù)字
    *    一致清晰的縮排格式

    9.3.3    JavaDoc
    常用標簽:@author, @version, @param, @return

    9.4        可靠性
    編譯時錯誤(compile-time error):沒有按照語法規(guī)則編寫合法的程序。
    運行時錯誤(run-time error):程序沒有完成指定的工作。可能是需求不符,可能是邏輯錯誤,或者兩者兼而有之。
    測試錯誤:從單元測試開始,然后進行集成測試。

    9.4.1    單元測試(unit testing,測試獨立的類)
    不要在原始類中添加main方法進行測試,而是單獨構(gòu)造一個包含main方法的類稱為原始類的驅(qū)動器(driver),
    這個驅(qū)動器類只是完成對特定類的操作,不會干擾的類。
    如果要進行單元測試的類依賴于其他的類,而被依賴的類當前無法獲得,那么可以開發(fā)一個啞元類(dummy class)用于替換無法獲得的類。
    啞元類是為了完成測試而開發(fā)的模擬真實類的類。

    9.4.2    集成測試(integrating testing,測試組成應(yīng)用的所有的類)
    在完成程序中每個類的獨立測試后,需要將它們組合,進行綜合測試,目的是保證類之間的接口可以正常地工作。
    為了進行接口測試需要對所有類進行重編譯。防止類間的接口不一致。

    9.4.3    黑盒測試(black box testing)
    把測試組件看作不透明的盒子,即忽略組件的代碼細節(jié),構(gòu)造測試的輸入數(shù)據(jù)時可以分成多個等價組。

    9.4.4    白盒測試(white box testing)
    把測試組件看作透明的盒子,構(gòu)造測試集,盡可能覆蓋組件所有可能的執(zhí)行路徑。

    9.4.5    測試日志
    測試日志是記錄系統(tǒng)開發(fā)過程中進行測試的文檔。

    9.5        健壯性
    一個程序意外地終止運行被稱為崩潰(crash)。
    將組件推向極限的測試方法稱為壓力測試(stress testing)。
    當違反規(guī)則時程序會報告異常(exception),報告異常的過程稱為拋出異常(throwing exception)。

    9.6        可用性(usability)
    程序的可用性是指應(yīng)用程序的使用者與程序交互過程的容易度。

    9.6.1    文本格式化
    轉(zhuǎn)義符:\n, \t, \", \', \\

    9.6.2    圖形用戶界面
    是 友好的,易于用戶操作的。

    自測題:
    1。解釋什么是繼承?
    繼承是指在類之間共享屬性和方法。繼承關(guān)系是一種層次關(guān)系,也被稱為a-kind-of關(guān)系。

    2。在UML類圖中如何描述繼承關(guān)系?
    用空心的三角形表示繼承關(guān)系,三角形的尖指的是基類。

    3。在Java中,使用哪個關(guān)鍵字聲明一個類是另一個類的子類?
    class 子類 extends 基類,用extends關(guān)鍵字代表繼承關(guān)系。

    4。區(qū)分方法重寫和方法重載的不同。
    多態(tài)性的實現(xiàn):方法重載和方法重寫。
    方法重載指同一類中可以存在具有相同名稱的不同方法,通過它們的參數(shù)列表加以區(qū)分。
    方法重寫指超類中的方法,可以在子類中重寫。
    不同的方法的相互區(qū)分:在方法重載中通過不同的參數(shù)列表相互區(qū)分,在方法重寫中通過隸屬的對象的不同相互區(qū)分。

    5。解釋什么是類型轉(zhuǎn)換,并描述Java中類型轉(zhuǎn)換是如何實現(xiàn)的。
    強制類型轉(zhuǎn)換(typecast):強制一個數(shù)據(jù)從一種數(shù)據(jù)類型轉(zhuǎn)換為另一種數(shù)據(jù)類型。
    通過在待轉(zhuǎn)換的數(shù)據(jù)前加一對含有新類型名稱的括號實現(xiàn)。

    6。解釋abstract和final修飾符分別應(yīng)用于類和方法時的作用。
    abstract class表示這個類為抽象類,不能創(chuàng)建對象,只能作為其他類的基類。
    abstract method表示這個方法是抽象方法,沒有實現(xiàn),子類如果要實例化,必須重寫這個方法。
    final class表示這個類為最終類,不能被繼承。
    final method表示這個方法是最終的方法,子類不能重寫。

    編程練習:代碼附件
    1.    QualityQ2.java
    2.    Reactor.java
    3.    EscapeSequence.java
    4.    FindCost3.java
    b)    說實話,這么簡單的輸出,真不知道還需要怎樣改善信息的布局。       

    posted on 2016-08-30 21:37 zYx.Tom 閱讀(172) 評論(0)  編輯  收藏 所屬分類: 1.Java世界

    主站蜘蛛池模板: 亚洲中文字幕无码一久久区| 亚洲国产乱码最新视频| 免费精品无码AV片在线观看| 亚洲国产中文在线二区三区免| 亚洲制服丝袜在线播放| 国产成人精品免费视频大全五级| 青青草原精品国产亚洲av| 亚洲一区中文字幕在线电影网| 日本高清高色视频免费| 亚洲欧美日韩国产精品一区| 亚洲色一色噜一噜噜噜| 国产香蕉免费精品视频| 皇色在线免费视频| 天天爽亚洲中文字幕| 日本红怡院亚洲红怡院最新 | 国产精品偷伦视频免费观看了| 成人免费无码精品国产电影| 日韩av无码免费播放| 亚洲国产精品18久久久久久| 亚洲不卡av不卡一区二区| 免费无遮挡无码永久在线观看视频| 亚洲Av永久无码精品黑人| 日韩亚洲一区二区三区| 日韩亚洲国产综合久久久| 男女免费观看在线爽爽爽视频| 亚洲最大无码中文字幕| 午夜亚洲国产理论秋霞| 免费萌白酱国产一区二区| 国产成人精品久久免费动漫| 亚洲区日韩区无码区| 手机看片国产免费永久| 亚洲人成网亚洲欧洲无码| 亚洲综合视频在线观看| 久久99国产亚洲高清观看首页| 中文字幕免费视频| 深夜久久AAAAA级毛片免费看| 亚洲国产精品无码久久SM| 国产免费人视频在线观看免费| 国产精品美女久久久免费| 久久精品国产亚洲AV| 亚洲人成77777在线观看网|