[Android應用開發]-(10)一個應用程式開發的蛻變過程

來源:互聯網
上載者:User

  因為首先是個人開發人員,而不是團隊開發。開發的過程中就沒有那麼規範,沒有詳細的需求,沒有介面設計,也沒有詳細的開發計劃等。所以一個應用程式的開發要經過很多次蛻變才能變得完美或者說取得更好的使用者體驗。當然了,這一切都是根據自己的開發技巧和技術層次而定的。

    下文是我在開發過程中遇到的一些有意思也很無奈的事。是看客的笑話也好,共鳴也好,我也都願意將它記錄下來,以饗看客。

    我們公司應用開發就我一個人,其餘的就是底層驅動開發和硬體開發人員。 一天我接到上級的一個開發需求,只簡單描述了需要實現的功能,說是用於產品批量生產時用來測試的。沒有需求文檔,沒有UI設計。一般在這種情況下我會將需要實現的功能用文檔列出來,再附上簡單的開發計劃。對於UI設計,也只是簡單的用PS或者就用Word畫個大體的設計,對於沒有藝術細胞的我也是在是有點難為,哈哈……

    根據簡單的需求,然後將各個功能列舉出來,發現有18個小功能:Wifi、BT、3G、MIC、Camera等,因為是用來測試的應用程式,所以盡量做到自動,介面盡量能一目瞭然,比如:測試通過的為綠色,未通過的為紅色。下面就可以進行開發了

    首先,項目的命名有點意思。我大致改了一下幾個,最項目命名為Test,第一個基本版本做出來之後看上去是在不爽,Test?怎麼看怎麼不爽,因為平時做一些小功能的測試Demo都是命名為TestXXX。這下好了,於是下定決心改為Testing,當時還是滿意的,等第二個最佳化版本開發完了之後又不爽了,Test總有陰影。於是再改為FunctionTest。這下好了,功能測試,能很好的表達這個應用程式的意思。也就暫時擱下了,不久新的功能再次被提出,需要再加入一個拷貝安裝的應用程式,沒轍建立一個工程名字命為:CopyAndInstall,好難為我。同樣的,我再次感到不爽,但由於項目的緊急,也就放下了。終於這兩個簡單的應用程式要在產品批量生產時使用了。其實對於這兩個程式還存在著顧慮,但也沒辦法,硬著頭皮上了,最後事情還是發生了?

    我們都知道無論是出口還是在國內,客戶對自己確認過的UI肯定也是嚴格把關的。客戶確認過的UI上面沒有一個叫做CopyAndInstall的應用程式,這下被抽檢人員給看到了,解釋半天,最終的結論是必須給他們發升級軟體。

    先說說我的CopyAndInstall隱藏的原理,CopyAndInstall會自動檢測一個設定檔,設定檔中有需要操作的命令,是拷貝還是安裝,CopyAndroidInstall讀取並執行操作,當操作執行完畢之後就自動隱藏了,但在生產的流水線上,由於測試人員疏忽,忘記了這一步操作,於是悲劇就這樣產生了。

    一怒之下,我將兩個應用程式合并,並重新命名為FactoryUse,預設隱藏,通過特殊的方式將其顯示,操作完成之後自動卸載!這下好了。全世界都安靜了。當然,我不得不聲明,沒一種實現方案都有其優缺點,這之間取一個最優的方案最為重要。

    再次,應用程式UI的改變也經曆了幾次大變動。18項功能,首先肯定不會在介面上排上18個按鈕,然後逐個實現點擊事件,並實現其功能。那麼怎麼辦?第一個版本使用ListView實現了,感覺還是很好的,一個頁面就顯示完了,而且測試的過程中可以看到各個項的測試狀態。然而當這個節目拿到測試人員手裡的時候,都說不好用,比如說我只想測試其中的幾項功能,難道要全部測試一遍?我只測試一項卻需要先選中,再點擊測試按鈕才能進入測試?為什麼要多一個操作呢?不能點擊就執行?……&*(¥#%#!!還是要冷靜,程式猿嘛。於是我加入了全選反選等功能再次給測試人員。“這一行都這麼窄,總是點不中啊”,都知道18項功能在ListView中顯示,如果作為手機那麼行多窄可想而知。MID也同樣,所測試人員都是女孩子可謂是芊芊玉指。在“狹縫”中遊盪也不是好受的,尤其是無數無數的“縫”就更人感覺恐怖了。這下好了,該寬一頁顯示不完。怎麼辦,於是被迫將介面改為GridView顯示。從此很有效暫時地止住了“流言蜚語”! www.2cto.com

    這就是軟體的開發,或者說是人類不斷進步的需求所需要的,需要不斷最佳化不斷改變。我很覬覦這種改變,但也很害怕這種改變,因為它能讓我不斷提高自己,無論是從設計還是純粹技術上都提高了,帶來的問題也很顯然,需求沒完沒了,版本沒完沒了。這時候專案經理會說,你把它做好了不就沒事了!是這樣嗎?你懂的

    上面提到的情況,其實不然。一個項目都是一個階段一個階段進行設計的。所以也必須經曆這樣一個從零開始到比較完美的過程。回過頭來,其實重要的還是過程,為了避免這個過程中繁複的迭代,很有必要在設計之初經過精心的準備,充分的調查,深層次應用程式的含義挖掘。

    基於這些情況,在項目的開發過程中列舉出以下原則。

1、給項目取一個好名字。藝人為什麼要改名?不就因為好聽、好記又有藝術感嗎?當然,我建議還是通俗易懂,合理貼切就好。

2、給項目一個好看的介面。無論是一個軟體還是一個人,給別人留下最深印象的還是第一感覺,第一感覺最主要的就是人的臉、外貌,軟體的介面。

3、永遠首先考慮使用者體驗。跳出思想的框框。跳出設計者的角色,以多個客戶的體驗來評價自己的設計。並且嘗試為好的體驗

4、非必要情況下盡量使用現有的控制項實現需求。

5、其他的就是《軟體工程》的了。

 作者:tangcheng_ok
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.