oo第一单元总结
第一次作業
- 第一次作業自己雖然很想向著面向對象的方向上寫,但寫出來還是很C語言式的程序。從頭到尾掃描字符串,掃到加減號便認為接下來是一項,再用正則表達式去分情況匹配出這一項。用Hashmap來存儲數據,方便合并同類項。最后套一個try-catch捕獲沒有考慮到的可能的異常。最后寫了將近三百行,而我看見的代碼基本就兩百行解決了。關鍵在預處理上沒有下功夫,導致掃字符串的時候要考慮的情況很多。
(1)基于度量分析程序
? (2)方法復雜度分析
?
2.第一次作業總結
(1)自己的bug:第一次的作業測試自己感覺還是已經做得很不錯了(雖然強測爆了)。最后一天晚上還靜態的看了一遍自己的代碼。盡可能多地推理可能的情況,堵上了很多考慮不周的地方。WF的問題已經考慮得很好了。第一次互測我被找出了一個bug,但是就是這一個bug害得我強測被爆。所以我覺得靜態的檢查要和動態的輸入輸出檢查結合起來才能讓測試更充分。而且往往都是在邊界問題上出現bug。
(2)別人的bug:第一次感覺大家都在找WF的bug,我也沒有很認真地去看別人的代碼。只是找了幾個大家都試過的WF式的代碼。
?
第二次作業
1.第二次作業大概花了半天的時間構思,還是努力地想往面向對象上寫。但是到最后還是只是為了第二次而寫。絲毫沒有考慮到程序的可擴展性。自定義了一個PolyNode類來存儲產生的數據。同樣是為了方便進行合并同類項。重寫了PolyNode的Hashcode方法和equals方法。然后和第一次一樣分情況用正則表達式來匹配。現在想起來當時完全可以把每一項切開來處理,可以使程序要簡單不少。
(1)基于度量的分析
(2)方法復雜度
2.第二次作業總結
(1)自己的bug:很可惜這次強測還是有問題。在輸出化簡的時候很天真地直接把 “1*”化簡掉,感覺很難受。
(2)別人的bug:第二次有同學分享的自動對拍的程序。就變成了跑數據找不同了。還是沒有靜下心好好看別人的代碼。感覺這點上做得很不好,只是為了找bug而找bug。
?
第三次作業
1.第三次作業從周六到周二,將近四天的時間我都在想怎樣用oo的思想寫出來這次的作業。說實話,這四天感覺自己每天大腦都處在高度緊張的狀態下。但是最后我還是用棧來暴力解決。和面向對象差得有點遠。最后感覺自己真的寫不動了,最后截止時間延長了我也沒有熬夜debug。直到昨天晚上才de完bug。
(1)基于度量的分析
(2)類復雜度
2.第三次作業總結
(1)無效作業1/5
(2)有時候想得太多也不是一件好事,如果當初我想了一天之后硬著頭皮寫下去我想怎么也不會成為無效作業。但是我白白想了四天到頭來還是一個無效作業。我佛了。
?
個人總結
感覺只要不是太關注成績,oo不至于過得很難受。雖然我花了那么大的時間的精力做第三次作業,成了無效作業不說,感覺自己的收獲并不是太大。因為花了太大的精力在做題和成績上,沒有靜下來去看優秀的代碼,去在網上找資料,去總結自己這幾周的得失。就連課上的PPT都沒有好好的過一遍。oo還是得靠自己找方法,找途徑了。
至于不少人都在討論oo這門課的好與壞,可能是自己的能力不夠,感覺好像自己沒有多余的精力來考慮這些。oo,os就已經很難受了,加上兩門硬核的核心通識課。每周都忙地不亦樂乎。總之希望這學期的oo自己能學有所獲。也不枉這一學期的煎熬。
轉載于:https://www.cnblogs.com/731338514-yin/p/10604753.html
總結
- 上一篇: 求美丽的神话歌词!
- 下一篇: error while loading