標籤:
1、選擇你的平台
選擇什麼樣的平台取決於你想做什麼以及你的使用者是誰。這些平台的最頂層是web。如果你想出售你的應用程式,那麼你可能想要將它放在市集。如果你需要使用相機或者其他裝置的API,那麼你可以使用本地方法,或者使用一些封裝好了的架構比如AIR/PhoneGap/Titanium。
這裡沒有明確的答案,你選擇什麼樣的平台取決於很多的事情,因此不妨回顧一下貼在牆上的那些話,也許它們會告訴你答案。
2、甭想快速暴富
很多人對比了當前的市集的熱潮和19世紀40年代末的加利福尼亞淘金熱,正如當初的淘金熱,有人成功有人失敗,更多的是失敗。我不建議人們只是為了賺錢而加入這行,那還不如到最近的賭 場堵上幾千英鎊來的現實。
但是我們經常聽到媒體上鼓吹一些巨大的成功範例。我最喜歡的故事是加拿大的開發人員 Matt Rix 花了幾個月的晚上,做出了一款遊戲,最終超越憤怒的小鳥,排名前10位,這可不是一件容易的事。那款遊戲叫做 Trainyard ,他將它開源了,並且共用了資料。
Flurry(一個行動裝置 App分析公司)發布報告稱,目前蘋果市集裡面有超過50萬應用程式,同時Android電子市場裡面的應用也達到了45萬。
再次強調這(致富)不是一件容易的事。
3、閱讀HIG
HIG(Human Interface Guidelines,人性化介面指南)是一個所有開發平台都具有的文檔,它告訴你怎麼樣去建立一個良好的使用者介面,讓使用者在使用的時候感覺就像在家一樣自然舒適。每個平台都是不同的,因此你需要考慮到每個細微的差別。
例如,iOS使用者習慣在左上方有一個返回按鈕,但對於Android來說,大多數機型都會有一個物理的返回按鈕,因此在應用程式上面再增加一個只能帶來不必要的冗餘和混亂。
在黑莓平板上,使用者希望通過下拉頂部狀態列來顯示設定選項。使用者往往不會感謝你提供了這些已知的人性化的行為,但是如果你沒有這樣做,他們一定會憤怒。
因此閱讀HIG從而瞭解這些概念,但是請記住,這些都是簡單的指導方針,但不是規則,更加不是分類的清單。
4、讓功能具有趣味性
開發一個實用的應用程式並不意味著它一定會很無聊。我們在2009年開發的一個應用程式 Flash on the Beach 中,使用了一套標準的 iOS 組件,但是設計出來的外觀和體驗完全不同。我們希望讓這個應用具有自己獨特的個性,但是又不會讓使用者想要疏遠。這在當時不是很常見,因此還獲得了一個 Gulltaggen 獎。
我最喜歡的iPhone相機應用是Camera+,它的按鈕和標題看起來很普通,但是具有可愛的自訂字型風格。
Tweetbot是我最喜歡的Twitter用戶端,它結合了陰影和漸層的巧妙應用,使自訂提示框與應用的其他設計搭配得非常融洽,整個應用看起來非常漂亮,這就是對細節的注重。
因此我們的應用可以遵循那些準則,同時仍然具有趣味性。現在在iOS5上通過使用新外觀的API使這件事變得更加容易。
5、挑戰慣例
這方面最明顯的例子就是“pull to refresh”(下拉重新整理)。你可能知道我具體在說什麼。自從布裡切爾在Tweetie 2 上介紹了這個詞,這個設計概念已經飛速的傳播到了其他的手機作業系統。
這個概念是簡單的,你將一個列表下拉到中間某個位置,然後釋放,這時就會產生一些事件,例如重新整理資料,就好像你的Twitter資訊。儘管當時沒有很直觀的產品,一旦你想到了它,它就是一個天才的、完美的“令人驚喜”的例子。
今天我們可以看到許多使用了“pull to refresh”的應用,比如Gowalla、Facebook、Google+、Tweetbot、foursquare、oink、Fribi 等等,將來還會有越來越多的應用會使用它。
另外一個流行的模式是提高中間底部的工具列按鈕。Oink、foursquare、Fribi以及其他的許多應用都採用了這種方法,讓人們關注應用程式的重點。
6、情境行為是不同的
當開發一個應用的時候,你只有30秒,也許是一分鐘的時間去獲得使用者的注意。你的應用必須讓使用者一眼就能看懂並上手。千萬不要使用複雜的介面,只需要給我們細節,對不對?
嗯,是但又不是(Well, yes. And no)。那麼你的使用者在哪裡?他們會在做什嗎?設計也應該相應的考慮這些。
7、內容也應該不同
簡單是好的,但是簡單並不意味著愚蠢——我們需要專註於我們的應用程式的核心功能並編寫高效的相關的copy。
然而micro-copy非常難寫,超級難。
8、我的手指很粗
我的手指很肥因此它至少需要44像素的地區。如果不這樣做那麼點擊會變得非常有難度。我們在FOTB2010這個應用裡面就犯了這樣的錯誤。
這個後退按鈕有10像素高,具有一個巨大的觸摸地區從而使得它容易點擊。那麼問題在哪裡呢?它幾乎看不到。一定要避免這種情況!
9、獨立的解決方案
如果你將要為不同的裝置開發一個應用,那麼你需要大量的資源。通過將映像放大去適應一個平板不是一個好的方法。
最簡單的方式是叫你的設計師一開始就建立各種規格的資源,這樣當你需要在iTunes上面使用一個512x512的表徵圖的時候就不會有問題了。
10、設計一個漂亮的表徵圖
俗話說得好,你只有一次機會讓使用者留下良好的第一印象,你的表徵圖是你的應用實現這一目標的基礎。
我們可以在空白的畫布上去做一些偉大的事情,通過這個機會,採用有效和漂亮的方法去解決你的問題。
我喜歡這樣。
因此,讓我們花些時間和精力去完善這些細節。去年,為了Flash on the Beach,我們開發了FOTB.me,這是我們第一次嘗試只針對行動裝置開發的webapp。
當網站被添加到iOS的主畫面時,你可以自訂表徵圖和啟動畫面。因此我們通過這個機會建立了一系列的表徵圖和啟動畫面,一套適用於舊的iPhone,一套適用於新的iPhone(它具有“視網膜”螢幕),一套適用於橫豎屏的iPad。
但是,這隻會被極少數人看到。但如果他們注意到了,我希望他們會感到驚訝甚至微笑。如果是這樣,那真是太棒了。
11、My Phone就是我的身份
這一切問題的原因是My Phone會透露很多我的資訊。
你可以看到我安裝了很多的應用程式,但是它們都整齊地歸類在不同的檔案夾,儘管我的辦公桌上一團糟。這說明了什嗎?我也不知道。
底線就是我無法容忍我漂亮的案頭螢幕上是一個醜陋的表徵圖————因為那會說明我是怎樣的一個人呢?
12、不要讓我去讀那些手冊(RTFM)
如果你認為人們不會這樣想,那你自己讀一下案頭軟體的說明書,那會比使用應用程式多花上兩三倍的時間。
當iPad出來的時候,有一個雜誌應用(這裡就不點名了),使用了大量的手勢導航。開始我還覺得很酷,這就像一個Minority Report(電影,“少數派報告”)那樣的東西,很有趣。
一個星期之後我就不知道該如何使用它了,協助螢幕也隱藏了起來,因此唯一的方法就是重新安裝它。這可不是一個好的體驗。
如果你想使用一些瘋狂的基於手勢的導航,我們不會阻止你。但是如果你必須這樣做,請將協助螢幕放在最近的地方,並且最好能讓你的應用值得我們花費這些時間。
13、不要偽裝
我不是那種模仿本地應用程式外觀和感受的webapp的粉絲。有一些UI架構會儘力讓它們看起來就像本地控制。但是當使用者從市集將它們下載下來之後問題就產生了。
這些webapp本身就啟動並執行比較慢,但是由於它們的外觀和感受與其他的應用程式相似,因此使用者會對它們產生錯誤的期望,從而將它們下載下來。它們做出了隱含的承諾但是卻沒有辦法達到。
我會避免它。
14、你的想法不是獨創的
NAS早在2001年就這麼說過,“沒有什麼想法是獨創的,太陽底下沒有什麼是新的事物。重點不是你要做什麼,而是你怎麼實現它。”“沒有什麼想法是獨創的”。
不幸的事實是,想法是多如牛毛,執行就是一切。一個精心設計的產品在合適的時間加上一點點運氣就能走很遠。
15、為你自己打造
這樣你能保證至少有一個幸福的使用者。更重要的是,如果你為你自己打造,你會很清楚的知道你到底想要解決什麼,怎樣才能有的放矢。
16、聽取使用者的建議
如果你很幸運,在某些方面你的使用者會支付你費用,所以有和他們溝通的途徑是非常重要的。使用類似於GetSatisfaction的服務和使用者交流,不管是反饋錯誤或提出新的功能建議。這裡的關鍵是,它是公開透明的溝通。Twitter 就是這樣操作的。
儘管我們聽取使用者的建議,並且他們有時候確實能提出一些偉大的想法,但是你也不必非要實現他們說的每件事,相信你自己的直覺。
17、“追蹤”你的使用者
分析非常重要的。它會讓我們從使用者的行為裡面學到很多東西,並且會讓我們看到使用者是怎樣使用你的應用的。
對於FOTB.me我們使用了Google Analytics,主要是針對Android、iPhone、iPad和PlayBook。我在Twitter上面看到有人說
@FOTBme I was hoping for this year when I heard web app, but on Opera/Symbian the site doesn‘t work at all...— Thomas Kr?ftner (@tkraftner) September 11, 2011
(當我聽到webapp之後期待了一整年的FOTB.me,結果它在Opera/Symbian上面完全不能用)
一開始我想,廢話!這能影響多少人呢?結果通過Google Analytics 我發現4,241個訪問者裡面只有四個人受到影響。雖然不幸有0.09%,但是我們還是可以容忍這點。當然你也可能沒有這麼幸運。
幾個小時後我們看到影響增大到了20個使用者,0.5%的比例,但是我們仍然可以接受。
重點是,如果沒有這些統計資料,我們沒有辦法知道這個問題到底有多大或者多小。有了這些資料(得知問題並不大)可以讓我們睡個好覺。
18、原型!
這是一個偉大的工具讓你可以向其他人表明你的想法並且可以檢測技術上的可行性。我們傾向於寫一套典型的、小的函數去檢測解決一個問題的可能的方法。無論你做什麼,首先在裝置上實現你的原型。沒有什麼比在裝置上直接測試更具有說服力,即使是滑動瀏覽一系列的圖片。
這裡有很多的工具可以讓你建立原型如 Prototypes、Balsamiq 和 FieldTest,你甚至可以使用Keynote。
無論你選擇什麼,將它放在裝置上並展示給你的朋友,以一杯啤酒的代價讓他們給你反饋。但是當你完成了這些之後,扔掉這個原型。
我是說真的,扔掉它!這的確很難捨得,但你要知道你寫的任何代碼,一旦做成了產品,永遠不會死。
無論用什麼方式,你寫原型很快。但是你不會希望用接下來的幾年時間去維護修改那段代碼。扔掉它!
19、開始
開始實現你的想法,因為是時候將它做出來了。這很難但是也很令人激動,這些想法終於不再只是卡在你的腦海中了,將它們帶到現實中來!
如果從一開始就想把所有的事情做的很完美,那很容易失敗,你不需要把它做的很完美,但是我們會儘力。
20、我們可以使世界變得更好
這是一個崇高的目標,但我就是這麼想的。作為設計者和開發人員我們有這個能力去創造一些不僅僅影響我們自己而且也會影響其他人生活的東西。
如果我們讓生活變得更加容易,更加簡單,哪怕只是一點點,同時解決了某個問題,那我們就做了好事,可以讓我們引以為豪的好事。
原文出處:http://www.w3cfuns.com/thread-5592495-1-1.html
投身移動開發必須知道的20件事