第四次oo博客作业
(1)本單元是撰寫UML數據分析器,架構大致如下,在指導書要求的函數外,對于UmlClass類,Umlinterface類,以及狀態機,順序圖這四個類重現構造一個類,這個類里有他們所需要的全部信息,另外還有三個check類和操作類,一遍提高代碼的可讀性。
(2)第一個單元,我根本不知道何為架構,我每次代碼都用的一個poly類(行數不夠就分一個類出去,分擔一下好引用的函數),第二次作業是電梯,電梯作業其實還是架構很清晰的,但是我在那個時候不是很會喲用繼承,導致出現了一些bug,因此從第三次作業開始我開始使用繼承這一功能,同時每次寫之前會仔細思考需要用到哪些類,然后他們之間的關系是什么樣的,我應該怎樣關聯他們都會仔細思考,也就導致雖然比第一個單元難,但是代碼更好寫,更好讀,更方便debug,同時一個類不會很長,但是類的數量大大增加。
(3)測試這東西在oo之前我真的沒怎么進行過,偶爾會對幾十行的c語言代碼進行調試,想oo這種大作業大代碼量的調試從未進行過,所以一開始其實是很懵的。后來在第二單元學會了寫評測機去進行對拍測試,第三單元后學會了用專用的JUnit配合JML規格進行測試,這種方法效率很高。同時對代碼進項架構化設計和,debug可以按照區域去de,也比直接看500行好受多了。
(4)收獲真的比我想象中的多,早有聽聞oo的“惡名“,但是這學期改進了太多,讓我感覺真的學到了東西。Java的使用變得無比熟練,從一開始的不會debug變成后來的debug小能手,從開始的毫無架構,變成現在的寫代碼先想架構,還有學會了JML的使用,學會了去看UML圖,學會了多線程撰寫,學會了永不放棄,只要努力,一定能寫出好的代碼等等!
(5)三個具體建議
一:不要把多項式求導放在第一單元,其實仔細思考下來,多項式求導的第三次作業才是整個oo作業難度峰值,應該放在第二單元或者第三單元去,那個時候大家的水平有了提高,同時那個時間段不會特別忙,更容易寫出高質量的代碼,起到鍛煉效果。
二:最后一次作業其實蠻有趣的,建議把這種作業的標準再明確,不要讓指導書里出現太多的非議,或者老師可以在課上對這一部分進行說明,解決大家的由于語文導致的問題。
三:第三單元作業對于算法的要求太高了,希望能降低一點難度,更偏向于讀JML規格化,可以考慮在指導書中不明確每一個函數的用處,主要讓學生通過讀JML去理解(這就要求JML必須是對的),這樣可能更有意義一些。
? ? ? ?其實上學期很多學長們都說oo非常魔鬼,但是目前開來不是那么魔鬼,課程組和助教都對這門課盡心盡力,使它現在變的很優秀。感謝老師和助教一直以來的努力,辛苦了。如果讓我評價這門課,我會說我很喜歡,學到了很多東西!最后祝oo越來越好!
轉載于:https://www.cnblogs.com/Boming/p/11071080.html
總結
- 上一篇: mac 安装使用 webp 来压缩图片
- 下一篇: python将某个列表按元素值分成多个子