許瑾
摘 要:一個應用程序的開發,特別是對開發者來說對一個陌生的領域的探索,對程序員的職業素質要求變得更加苛刻,團隊的合作也是現代生活的一種重要的形式,在IT領域這是一種非常普遍的合作形式,該文就筆者第一次開發Android應用程序的親身經歷,從項目開始到結束就自己的成敗得失,經驗教訓談談自己的看法。
關鍵詞:軟件開發流程 Android程序 團隊合作 經驗交流
中圖分類號:TP311 文獻標識碼:A 文章編號:1672-3791(2014)10(b)-0020-01
計算機是個神奇而美麗的世界,只有真正的體驗過,才會體會到創造所帶來的樂趣。第一次開發比較大型的Android應用程序,需要的技術有很多是平時從未接觸到的,成員們就一邊學習,一邊開發,縱有收獲帶來的喜悅,其中也免不了失敗帶來的失落和艱辛。由于剛開始的每一步都比較艱難,但這是一個過渡期,過了之后,你會發現許多事情事實上并沒有想象中的那么難,很多人都是很難邁出那第一步,所以要想成功,就要選擇堅持,學會迎難而上,那么你就會發現收獲的不僅是知識上的,更多的是來自以后面對困難的勇氣和責任。
“萬事開頭難”,只有鼓起勇氣跨出那猶豫不決的第一步,才有機會去走后面的每一步,才有機會走向成功。
1 重視規劃設計
軟件開發最重要的就是前期的規劃和它的設計架構,就好比是摩天高樓的地基,即使只有一塊磚沒擺好都有可能導致整個高樓建設失敗。在沒有真正開始這個項目之前,隊員們對所謂的規劃及其重要性的揣測都很模糊,只是大概的理解。當真正接手去做,才發現原來前期規劃涉及了市場、產品和技術研發等各個方面,包括需求分析書、產品規格說明書、設計說明書、界面設計、數據庫設計等大量前期的準備。這么多的東西讓第一次參與開發的我有些發懵,不知道這些規劃書需要做到什么程度,以至于單純地認為只需要把軟件的每個功能表述清楚就好。但是當真正深入開發之后,會發現自己所做的僅僅只是開了個頭而已。
雖說還處于前期的設計階段,但數據庫和界面的設計已經開始了。面對龐大的工作量,隊員們選擇先將軟件的設計方案確定下來,并且要足夠的準確、細致、清晰,所有涉及開發的人員都能夠清楚的理解它所要表達的意思。然后在確定方案之后,隊員們要在界面、數據庫等的設計規劃方面,做詳細的分工。為了使工作更好地開展,在整個工作過程中,隊員之間也要一直保持訊息的通暢,以此來保證各部分的完美契合。
2 學會編程
編程是一門藝術,更是一門技術。通過看教程,搜集相關資料,知道了什么是Java、什么是eclipse、什么是模擬器、什么是環境變量,什么是SDK,學習的過程很漫長,但是要從中體會到知識帶給我們的快樂。但是即使是這樣的學習,成員們還是沒能真正搞清楚它們之間的聯系,要說對它們有了更多的了解是在之后的編碼過程中。這些編程并沒有想象中的那么容易,還沒開始編程,只配置編程環境就花了不短的時間。
看完教程后,認為自己可以上手了,但是你會發現從教程上所學的東西根本不能直接拿來用,生搬硬套是行不通的,真可謂是舉步維艱。每做一步基本都要查書,上網找資料,但是這樣的成長速度比之前看教程的效果好得多,而且知識容量也在迅速的增長,這才曉得只有實踐才是學習新東西最快捷的途徑。自己遇到的問題越來越少,開發也變的起來越來越順暢,這才深刻體會項目經驗對于技術開發人員來說是多么重要。
3 重視團隊組織合作
在團隊作戰方面由于之前沒有任何經驗,在這里就出現了比較嚴重的問題。因為實驗項目給的時間比較長,隊友相對都比較輕松,再加上開發階段的組織根本沒有到位,后果就是嚴重影響了團隊開發的熱情和項目進度。隨著時間的臨近,開發熱情變成了整體的負擔,甚至團隊里有人出現了想要放棄的念頭,團隊的開發工作這個時候出現了嚴重的危機。出現這種情況的原因主要以下幾點。
(1)沒有制定一個明確、詳細的時間進度計劃表,并且進度計劃并沒有嚴格執行。
(2)隊員間的交流溝通不夠,許多問題不能及時的解決,這也是造成拖拉的重要原因。
(3)分工不合理,項目的模塊的粒度粗細沒有掌握好,造成了有的隊員的壓力比較大,積極性受到影響。
面對這些問題,隊員們采取相應的措施來重塑隊友的信心和提升整個團隊的戰斗力。
首先成員們對項目的時間進行了重新的規劃,做到每個時間段盡可能的詳細。對項目的構架進行了重新的調整,Common層提供基礎服務,Repository層提供MySQL數據庫的訪問,Service層提供各種業務邏輯方面的服務,UI層提供界面。讓每位隊員對自己負責的部分清晰,并且對自己負責的部分有信心。
對于隊員,要求每天除了上課的時間,都要保證在團隊進行學習開發,有事情要事先說明和請假,這樣確保了團隊的開發氛圍和隊員之間的交流,并且就出現的問題能及時的交流和解決。此外,要求每位隊員在每周的例會上對自己本周的進度進行匯報,進度不達標的要“加班”完成,這樣確保了項目進度的一致。
在隊友們的共同努力下,項目的開發終于有了起色。在開發最枯燥的時候,隊友的相互鼓勵重新燃起了對開發的熱情,整個團隊充滿了正能量。這種和隊友一起奮戰,一起努力的時光,我相信在大學里面這將是獨一無二的記憶。收獲的不僅是知識和面對困難的勇氣,還有隊友之間的友誼。
4 注重調整測試
這是整個項目的最后的把關,測試要劃多次、分批進行,不要全部開發完成再對軟件做測試,特別是對自動化單元測試很重要。
在從開始參與開發到最終完成的這個漫長過程中,不得不承認開發是件很枯燥的事,但你也可以從中找到屬于自己個性的一面,并從中找到快樂,生活何嘗不是這樣,需要我們從每天忙碌的生活中去尋找樂趣,尋找面對困難的勇氣,尋找面對責任的擔當。經歷過失敗,才能體味到成功的喜悅,要知道,我們的代碼真正的像魔法一般改變著這個世界。
參考文獻
[1] [美]Robert C.Martin,著.程序員的職業素養[M].章顯洲,余晟,譯.人民郵電出版社,2012.
[2] 池建強.MacTalk人生元編程[M].人民郵電出版社,2014.
[3] 靳巖,姚尚朗.Google Android開發入門與實戰[M].人民郵電出版社,2009.
[4] 王向輝,張國印,沈潔.《Android應用程序開發[M].清華大學出版社,2010.endprint