OO最後一次博客

1、測試與正確性論證比較多線程

  測試是使用測試樣例對程序進行檢測而正確性論證則是根據代碼的邏輯進行驗證。測試

  測試想要徹底覆蓋的難度較大,須要大量的樣例才能達到近似的徹底覆蓋,而正確性論證則不須要花費那麼大的精力,只須要根據代碼的邏輯和規格進行一系列驗證便可。spa

  兩者相互補充,相輔相成。正確性論證可能因爲一開始設計的錯誤致使程序運行的錯誤,而測試則難以覆蓋全面,兩者相互補充以後即可以對程序進行充分的測試。線程

2、OCL與JSF 設計

  對象約束語言(Object Constraint Language),簡稱OCL,是一種指示用戶建模系統中的限制方式。它是UML可選的附加內容,能夠用來更好地定義對象的行爲,併爲任何類元指定約束。對象

  與JSF的類似:兩者都是形式語言,聲明式的語言,都沒有二義性,都有前置條件和後置條件以及不變式;blog

  與JSF的區別:OCL每一個表達式都是具備類型的,且具備許多的基本數據類型等,不像JSF同樣徹底使用邏輯表達式。開發

3、第十四次做業UML圖入門

  1.UML類圖 效率

  

  2.UML時序圖

  

  3.UML狀態圖

  

 

4、學期小結

   一、知識點小結

  第一個單元主要講的是面嚮對象語言的思想等,較爲簡單,也是爲了讓咱們入門;

  第二單元難度便加大了,開始進行多線程的相關訓練,講了多線程的機制、衝突等等;

  第三單元便開始了規格化設計,主要是JSF語言的書寫與程序的規格化設計;

  第四單元則是代碼的驗證與測試,主要是單元化測試、正確性論證等。

  這四個單元是按部就班,相輔相成。

  二、我的程序分析

  這一個學期一共寫了9個程序,從最簡單的多項式加減到最後的出租車問題,能夠看出代碼的質量是逐漸提升的。

  如今看前幾回做業,發現當初的代碼是那麼的慘不忍睹,一個方法上百行,很難看出到底在寫什麼;然後面的代碼便好了許多,方法也就十幾行二十行,條理較爲清晰,讀起來也很方便,修改bug也很簡單。儘管如此,代碼仍是有很大的進步空間,是能夠再進行提升的。

  三、工程化開發理解

  工程化開發便是按照必定的規格設計進行程序的開發,便於團隊間的合做,提升工做效率和下降成本。

  良好的工程化,能下降溝通成本,實現更好的協同,節省開發和測試人員的重複勞動,下降發佈的常見問題等等。

  四、對課程的指望與建議

  其實能提出的建議很少,一是但願指導書能詳盡一點,同時後面幾回做業互測的時候能把扣分點明確一下,以減小或避免惡意扣分現象的發生。

  對於互測機制,其實沒什麼好說的,雖然確實很想吐槽但也很難想到更好的替代方法,所有讓助教和老師來批改做業也很不現實。

  至於指望嘛,天然是但願OO越辦越好,能好好的鍛鍊一下學弟學妹咯。

相關文章
相關標籤/搜索