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