經過博客作業所得
C++這門課讓我收益頗多,像Github,博客園,命令行等都是之前沒有遇到的,這些都給我們提供了一個途徑來交流與學習與計算機有關的知識。
電梯作業的感想
在第一次電梯作業出來時,我想的就是最優,然后到了最后,程序甚至都運行不起來,理想和現實差距還是很大的,在我的設想中,電梯要到哪一層的判斷應該完全交由計算機來控制,因為由人來調控的話,人需要考慮到各種特殊情況,而且難以包括所有可能;由計算機控制的話,計算機模擬各種方案,然后選擇時間最短的方案。但是這樣也同樣存在問題,方案太多,程序效率低,我也沒能成功的實現這個方案,於是我選擇了第一個方案,沒有模擬,由毎個請求的預計到達時間減請求發出時間算出不同方案所需時間,然后計算預計時間就有了問題,還有許多特殊情況,最后的程序以失敗告終。在之前的C語言課程中,我所遇到的題目都是非對即錯,但電梯作業則可以先實現電梯的運行,然后再考慮最優,不斷改進。其實這也是應為面向對象編程和面向過程編程的不同所在,面向對象編程可以分成許多對象,分別實現電梯的運行,電梯的調控等功能,而面向過程編程則要考慮整個實現過程,改進的話,幾乎相對於重新寫一個程序了。總的來說,在電梯作業中,我最大的收獲是在之后的學習我能更好地理解面向對象的思想。
團隊作業的感想
關於團隊作業,一開始大家都是很興奮的,自己寫一個游戲,想想就很有成就感,最初的構想是這樣的,先合作討論一下基本框架及毎人的分工,然后毎個人寫好自己負責的部分,最后進行組合,嗯,想得很美好,最后出來的代碼耦合度不高。這樣的思路我認為是沒錯的,但最終卻難以整和,我認為主要原因是,分工還不夠清楚,毎個人都還不夠清楚自己要實現什么功能,只是根據題目要求而沒根據自己小組的要求,最后差距是很大的。
關於重構
寒假的作業中是有重構的,調整了思路,降低了實現的目標,沒有再執着於時間最短,先實現可運行,然后在開學后的第一次電梯作業中,對請求的儲存與處理也進行了調整,但在如何實現電梯時間最短,一直沒有更好的想法。
經過一學期的學習,我的體會和感觸
計算機領域的更新換代真的很快,學如逆水行舟,不進則退,在這個專業,我們很累,因為我們永遠也學不完,但我們很幸運,因為我們能夠見證時代的發展,甚至有人可以推動時代的發展。