1. 程式人生 > >結對作業收獲

結對作業收獲

百度 自我 界面 完整 競爭 原本 效率 結對編程 需求

結對作業收獲

隨著結對編程的告一段落,我們的個人項目也就結束了。不得不說,經歷過這兩次作業的磨練,自我得到了很好的鍛煉。以下就簡要說說我的收獲和反思。

一、知識和技術層面上的收獲

一開始接到這個任務是比較茫然無措的,因為我之前從來沒有接觸過UI界面的制作,更別說是跨平臺了。於是經過搜尋資料和詢問他人之後,我們組確定了使用Qt作為制作UI的平臺。通過從網上找到的Qt入門教程,我們磕磕絆絆地學習了一些UI方面的知識,這算是最基本的知識收獲了。

時間不等人,由於時間的關系,我們並沒有完整地完成學習,而是試著在core組沒有完成開發的時候開發UI的基本功能。通過臆造core組可能出現的接口並結合老師的要求對

UI界面進行了初步的構造。在制作初步界面的過程中,經過一些問題的解決,我們收獲了不少基本問題的解決方法,也對後面的對接提供了非常有用的經驗。比如說實踐證明,涉及IT技術問題,StackOverflow比百度好用……

接下來進入對接階段,如何調用dll文件,如何設計測試,如何將core組的接口嵌入等,都是我們在對接過程中學習到的知識。這些知識也是相當寶貴的。在界面設計方面,我詢問了以前做過GUI的同學,得到了部分界面設計的心得,亦是難得的經歷。

二、思想層面上的收獲

這次結對編程,除了在知識和技術層面上獲益匪淺,在思想層面上更是得到了不小的啟發。首先是對於結對編程本身,我感受到了和個人編程截然不同的氛圍。個人編程重在個人實踐,結對編程則需要投入相當一部分時間與隊友交流。這次我與我的隊友的交流還是相當成功的,同時采用在代碼中加入適當的註釋等方法,讓我們在這方面節省了不少時間。

其次是標準化的思想。由於各組core的接口不同,甚至到了迥異的地步(傳數組、字符串、文件讀寫等),導致我們在對接的時候對每一組都要在原本的框架上進行調整不少內容,花去了很多時間。就這樣看來,如果要實現coreUI的大範圍對接,標準化的接口是十分必要的,一方面減輕了各自的負擔,另一方面為各自部分的制作標明了方向。這樣一來各組標準競爭又是一件比較復雜的事情了,果然如老師所說,搶占標準是相當重要的事情。

再次是一些瑣事,在一開始設計UI界面的時候我們對接口進行了精簡化處理,之後的過程中由於各種原因我們沒能回頭重構一遍,因此較為粗糙的代碼在後期對接的時候帶來了不小的困難,說明一些小問題如果不及時處理,後面就會滾雪球,到最後牽一發而動全身的時候,就已經積重難返了。

最後,關於要求不妨再多說一句,其實這是一個比較貼近實際的例子。我們制作的題目是隨機的(準確說是偽隨機),但是我們的練習冊的題目卻不會這樣,是針對某些特定題目進行強化得來的(容易出錯的)。如果可以的話,可以試著通過聯網等方式收集錯題,然後出一本不錯的小冊子,也是一定的商機。

三、最後的反思

現在看來,這次作業先天不足的一點是規定與實際的相矛盾性,不采用標準接口卻想要完成所有UIcore兩兩對接,是比較不可思議的,希望老師在之後的課程中能夠加以避免。同時就時間的安排上來說,這次比上次好很多,沒有發生在最後階段趕工的情況。但是就細節上說,兩人的工作效率在一些時間中還是沒有最大化(比如兩個人一起看文件操作、一起對接),在前期熟練的基礎上,後期如果分頭開工應該會更好些。還有對於UI界面的視覺效果處理上也是很粗糙的,只是貼了一張我們覺得好看的圖片作為背景,(也許是工科生的審美問題?)沒有考慮小學生的需求,也是不盡如人意的。

結對作業收獲