今天團隊項目阿爾法版本基本完成,可以發布了。在這個過程中,學到了許多的知識,收獲了很多。
-
一、項目起源
我們團隊要做的項目是我的一個想法,做一個可以集合各個外賣網站信息的手機app。首先我們對人員進行了分工。開始的時候是這么說的,但到了真正做的時候,干活的就沒幾個人了。
其實這也是目前大學生的一個現狀吧,國外也是一樣。很多人在團隊里就只是混混而已,沒做什么實質性的東西。
-
二、我的任務
這個項目也是我的一個項目,所以我付出了很多的努力。項目中服務器端和安卓客戶端的代碼都是我一個人完成的,網絡爬蟲由另一個同學完成。所以我基本上完成了整個團隊65%以上的任務量。
剛才統計了一下,客戶端功能的部分一共寫了4000行的java代碼,界面設計的部分一共寫了1300行xml代碼。服務器端大概用了1200行php代碼。雖然付出了很多,但是我收獲了許多的知識。
-
三、開發過程
1. 服務器端開發
項目開始的時候,我只會做安卓客戶端,完全不懂服務器和網絡通訊的東西。后來我找了一本書,是講php+安卓實現客戶端和服務器端的。我從這本書中獲益匪淺。
利用apec放假時間,首先我用一個下午的時間學習了php,之后我用了三天的時間讀懂了書上的服務器實例的代碼。接下來的三天我便開始服務器端架構的設計、代碼的實現以及測試功能是否完全。
從服務器端的開發我學到了許多許多有用的知識,真正的體會到了MVC框架的實用性以及面向對象編程寫代碼時的高效。服務器端布置好了之后,我便開始了安卓客戶端的開發。
2. 安卓客戶端開發
之前我有過幾個安卓項目的開發經驗,開發經驗就只有兩個月,但是我覺得自己已經對安卓開發有很多的了解了。客戶端開發的過程中,許多方面也都借鑒了那本書。在這過程中我學會了許許多多安卓以及java的知識。
客戶端開發的比較慢,由於只有我一個人開發,最終用了12天左右的時間,完成了客戶端的開發。
在這過程中也不斷對服務器代碼進行修改,以實現客戶端請求服務器數據的一些功能。
-
四、代碼架構
1. 客戶端
這是客戶端代碼的架構。可以看到我把所有源代碼的warning都改掉了。設計部分的代碼不可避免地讓按鈕等控件顯示了一些字符串,這些warning改掉需要大量的時間,所以暫時沒改。
2. 服務器端
這是服務器端代碼的架構。服務器端我用了hash-framwork的架構。這個架構非常輕量,實現了我需要的所有功能。其他方面還有待考察。
-
五、項目感想
最終完成了一些基本的功能,看着自己完成的東西,也感覺挺好的。覺得在項目開發的過程中對許多東西都有了新的認識,有了這些經驗,我相信我以后還能做的更好。我覺得現在多做一些寫代碼的事情,以后工作了肯定就會少做一些。
希望以后可以有機會和幾個人一起寫代碼,而不是我自己一個人完成所有的工作。這個項目的下個版本也就基本上我來完善這些代碼了,因為如果交給其他同學,他們看懂這些代碼最起碼也得花上10天左右的時間。
雖然很累,但還是很開心看到自己設計並完成的東西發布了出來。