日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OO9-11总结

發布時間:2025/6/15 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OO9-11总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

規格化設計的大致發展歷史


  1960年代末—1970年代初,出現軟件危機:對軟件系統的大量需求與軟件的研制周期長,可靠性差,維護困難的現實情況形成矛盾。于是人們希望編寫出的程序結構清晰、易閱讀、易修改、易驗證,即得到好結構的程序。1968年,北大西洋公約組織召開第一次軟件工程會議,分析了危機的局面,研究了問題的根源,第一次提出了用工程學的辦法解決軟件研制和生產的問題。

  與此同時,許多學者也從結構化程序設計、程序正確性驗證等方面展開了規格化設計的研究。Dijkstra 提出了“GOTO是有害的”,希望通過程序的靜態結構的良好性保證程序的動態運行的正確性。Hoare提出了基于“前置后置條件”的接口規格方法。D.Gries綜合了以謂詞演算為基礎的證明系統,首次把程序設計從經驗、技術升華為科學。

  規格化設計帶來了許多好處。它使得軟件開發過程變得更成熟,能更好地保證軟件質量。而且使得團隊協作開發更加可行,分工更為明確。所以人們非常重視。

規格bug


?

?Bug數代碼長度
Requires不完整222(write)
??1(addMap)
Effects不完整13(SafeFile)

產生原因:

  Requires不完整的兩個錯誤原因:其一是在寫被改變的變量的時候,類變量一多,混雜在臨時變量之間就容易被忘記。第二是對參數要求的時候容易想不清楚。比如說存地圖時,在輸入處理環節就已經保證不會傳入非法的參數,所以在存的這一步我沒有對傳入變量進行要求,但事實上應該要求的。我們不能提前預知到前方已經做過處理了,因此要施加我們的要求,好讓前方的處理按照我們的規格進行處理。

  Effects不完整是因為忘了寫拋出異常。通過這幾次互策 互測,及OO上機代碼,我發現大家都有著很好的異常處理,不像我想到了就給方法加個try catch。他們的異常處理很方便定位錯誤位置,且邏輯性很好,學到了。

前置條件不好的寫法


公開處刑1 

public void runLess(Point from, Point to){/** @REQUIRES: 起點from,終點to……*/……from.method();to.method();…… }

  用自然語言來寫前置條件,為了表達同樣的意思需要更多筆墨。此處的Requires需對from,to進行約束,因為函數體內部運用了對象的方法。所以寫成下面這樣更簡潔更明確。

/** @REQUIRES: from != null && to != null;

公開處刑2

public synchronized boolean judge(Passenger p) {/**@REQUIRES: p!=null && 0<=p.getCurrentX<80 && 0<=p.getCurrentY<80
        && 0<=p.getDestinationX<80 && 0<=p.getDestinationY<80;* @THREAD_EFFECTS: \locked();
*/ }

  這和我之前想不清楚的地方一樣:我要對這個對象約束多深?比如:如果傳入參數是一個ArrayList,我是否在保證其不為null的情況下還要保證內部元素不為null;如果是ArrayList<Taxi>的話是否還要檢查元素為Taxi類型,是否還要檢查Taxi的內部參數滿足要求。現在我覺得不需要約束這么多,應交給別的地方來保證這些。例如在Passenger的構造方法中對乘客的坐標進行約束。所以此處寫?p != null;?就夠了。

  沒法寫5個案例,因為我的前置條件不是在約束數字范圍就是在限制不能為空。

后置條件不好的寫法


?公開處刑1

public synchronized boolean isSame(Passenger p) {/**@REQUIRES: requestList != null && p != null;* @EFFECTS :* \result == requestList.contains(p);* @THREAD_EFFECTS: \locked();*/遍歷requestList并根據Passenger的實例變量來判斷是否同質}

  這個寫的不好的地方在于同質的話,就存在一個和p在時間、當前坐標、將要去的地方完全一樣的對象,但這個對象和我傳入的對象并不是一個對象,所以這種寫法不好。但感覺很難改進,只能自己寫一個contains的方法來保證這個Effects。

公開處刑2

public static void main(String[] args) {/** @EFFECTS: * 啟動xx線程,啟動xx線程,啟動xx線程*/

  Effects應該描述方法結束后系統的變化。在main方法開始前,這些線程還未出生,main結束的時候又一波帶走了他們,所以main的Effects內只需寫對類變量的改變就行了。

  *如果一個方法調用了很多別的方法,我要對這個方法的效果描述到多深是一個困擾著我的問題。

?按照作業分析被報的功能bug與規格bug在方法上的聚集關系


  沒有什么關系。

  因為不是先寫規格再寫功能的。

  規格出問題的功能都沒問題。反之亦然。

歸納自己在設計規格和撰寫規格的基本思路和體會


  基本思路就是關注外部環境,關注方法結束后的思想吧。

?  體會是規格蠻重要的,但是現在還不太能體會到,反而不如讀代碼快。

  最不能理解的是測試者保證的地方又允許測試者不保證來測試,還不如不說。該保證的地方不保證得到錯誤情況難道不是當然的嗎?

其他


  這三次體驗很不好,很影響我心情,遇到了好的測試者、被測試者,但所有的好心情也敵不過一次壞心情。尤其是最后一次吧,終于見到了OO課程被大家詬病的問題了。但他人惡意來面對我,我如果還將惡意傳遞出去,豈不是也成了惡人了嗎。有什么必要呢,分數拿走便是了,我應該關注如何把代碼寫的更嚴密,挑不出瑕疵,關掉網站頁面。

轉載于:https://www.cnblogs.com/AAO972/p/9105226.html

總結

以上是生活随笔為你收集整理的OO9-11总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩视频免费观看 | 男人用嘴添女人下身免费视频 | 久久综合婷婷国产二区高清 | av资源在线免费观看 | 激情免费av | 黄色片在线视频 | 国产妻精品一区二区在线 | 色一情一乱一伦一区二区三区 | 国产永久免费无遮挡 | 夜夜爱视频| 中文在线永久免费观看 | 精品国产精品网麻豆系列 | 影音先锋激情 | 人人上人人干 | 黑人玩弄人妻一区二区绿帽子 | 九草视频在线观看 | 国产精品色在线网站 | 日本人与黑人做爰视频 | 性欧美视频 | 亚洲美女视频一区 | 中出一区二区 | 天天5g天天爽免费观看 | 成人免费视频播放 | 久久中文字 | 女同性做爰三级 | 99热手机在线观看 | 日韩欧美在线免费观看 | 日韩视频福利 | 三上悠亚亚洲一区 | 国产精久久 | 亚洲欧洲中文 | 成人网一区 | 黄色福利 | 在线观看你懂得 | 成人在线直播 | 日韩在线视频中文字幕 | 欧美日本一二三区 | 成人免费在线网址 | 免费日韩在线视频 | 72pao成人国产永久免费视频 | 欧美性开放视频 | 91精品久久久久久粉嫩 | 国产亚洲女人久久久久毛片 | 国产一级久久久久毛片精品 | 亲子乱aⅴ一区二区三区 | 国产级毛片 | av中文天堂 | 亚洲 自拍 另类 欧美 丝袜 | 天堂av免费观看 | 香蕉免费在线视频 | 日韩欧美在线观看一区 | 欧美成人黄色 | 孕妇爱爱视频 | 亚洲少妇视频 | 韩国明星乱淫(高h)小说 | 吻胸摸激情床激烈视频大胸 | 无码av免费精品一区二区三区 | 成年人在线免费 | 日本免费网站在线观看 | 亚洲久久在线观看 | 黄在线视频 | 国产成人视屏 | 欧美三级三级三级爽爽爽 | 岛国片在线播放 | 久久精品国产亚洲7777 | 国产黄色片视频 | 国产a毛片| aaa在线 | 中文字幕一区二区三区免费视频 | 女儿的朋友在线播放 | 黄色三级在线 | 丁香免费视频 | av午夜影院 | 午夜影院免费版 | 久久国内精品视频 | 国产成人亚洲一区二区 | 丁香婷婷视频 | 久久午夜视频 | 国产成人在线观看 | 少妇毛片一区二区三区 | www.超碰在线 | 美丽的姑娘在线观看免费 | 在线精品视频播放 | 国产孕妇孕交大片孕 | 日韩高清一区二区 | 黄色一及片 | 欧美精品免费一区二区 | 精品国产乱码久久久久久预案 | 欧美极品视频在线观看 | 日本视频在线免费观看 | 精精国产 | 在线看免费| 天堂亚洲精品 | 香蕉视频在线视频 | 日本特黄一级 | 日本大尺度电影免费观看全集中文版 | 亚洲爆乳无码精品aaa片蜜桃 | 又黄又爽又刺激的视频 | 亚洲一级视频在线观看 |