OO第一次總結

  學OO學了一個月,我感觸良多。雖然這是咱們第一次系統地學習面向對象,但其實從大一開始咱們就已經接觸了這種編程思想。在咱們學Python的時候,就已經接觸了類和對象的概念,只不過當時不做爲重點內容而在教學中一帶而過;在大二上學期,有些同窗選了Java程序設計這門選修課,能夠說也是提早接觸了面向對象的編程思想。本學期開學以來,經過這幾節課以及三次做業,我對面向對象編程思想有了更深入的理解。編程

做業一數據結構

本身的bug:第一次做業中,我有一個公測點沒有過,緣由是輸出的格式沒有考慮周全,在特定數據下竟然會多輸出一個逗號,這能夠說是很是低級的錯誤了,可能我已經習慣了數據結構課的那種標準化的測試數據,那時候對程序健壯性的要求不是很高。此次的錯誤源於一個很差的代碼風格,致使在隨機輸入時可能會出現不符合要求的輸出。在從此的編程中我會更加註意這一點。多線程

發現別人bug的方法:第一次做業我測試的那份代碼的輸出部分比較奇怪,隨便輸入一組錯誤數據,均可能會同時輸出多個ERROR,但令我不解的是這種輸出竟然會被評測機和助教承認,這讓我對指導書的有效性產生了嚴重懷疑。併發

類圖和一些度量參數:學習

 

 

做業二測試

本身的bug:第二次做業中,我吸收了第一次做業的教訓,認真檢查了細節,而且在課下利用隨機數據進行了大量測試,提交以後,果不其然過了全部公測的測試點。本來我覺得個人這份代碼寫得完美無缺,但是在互測中仍是被對方挑出了bug:當請求超過100條時,個人程序即便不輸入RUN也會自動執行,這違背了指導書中「輸入RUN開始執行」的描述,對於這個bug我錯得心服口服,並暗暗告誡本身下次切不可再犯相似錯誤。spa

發現別人bug的方法:第二次做業我測試的那個同窗代碼寫得很是漂亮和完善,我沒有找到bug。線程

類圖和一些度量參數:設計

 

 

做業三對象

本身的bug:第三次做業中,我吸收了前兩次做業的教訓,認真處理了輸入輸出的細節,但是此次個人核心結構出了問題,總的來講就是思想有些混亂。在課下用隨機數據測試的過程當中,個人代碼老是會出現各類各樣的bug,捎帶部分寫得一塌糊塗,對於每一個bug我都得大動干戈地修改一番,這讓我感到很是難受,並讓我深深體會到了寫代碼以前認真構思的重要性。眼見提交截止時間近在眼前,而我已經沒法改完全部的bug,無奈只好交了個半成品上去。然而,戲劇性的狀況發生了:個人代碼經過了公測所有測試點並且沒有被找出一個bug,這能夠說是很是幸運了。在提交做業以後,感到不甘心的我又從新修改了本身的代碼,認真處理了捎帶部分的細節,並發現了本身當時計算時間時候的疏忽。通過半天的修改,我終於改完了全部的bug,對此我感到很是欣慰,由於我終於爲多線程電梯打下了良好的基礎。

發現別人bug的方法:在我給那位同窗測試的過程當中,凡是超過五行的測試數據他的代碼就有大機率沒法獲得正確結果(我針對錯誤分支樹上的節點構造的數據,幾乎都能給他的代碼測出bug,不過最終出於友好原則只給他加了幾個最嚴重的bug)。

類圖和一些度量參數:

 

 

總結和心得體會

  三次做業寫下來,個人感受是:我寫的代碼居然愈來愈面向過程了(這點從紅字的增多也能看出來)……甚至一個類的一個方法就有好幾百行代碼。其實不止我這樣,我身邊有許多同窗都面臨着這樣的問題。明明正在經過學習一點一點加深對面向對象編程的理解,但是一遇到稍微困難一點的題目時就又不禁自主地使用了面向過程的結構。究其緣由,多是咱們對面向對象編程思想的應用還不熟練,以致於沒法用它解決困難的問題。不過,相信經過一個學期的學習與訓練,咱們都能對面向對象編程有必定的理解!

相關文章
相關標籤/搜索