的選擇
大多數(shù)Android開發(fā)是在Eclipse中進(jìn)行的,其實(shí)IntelliJ IDEA的社區(qū)版也挺不錯(cuò),我用它非常順暢地編寫了一些應(yīng)用程序。就個(gè)人而言,我對(duì)于Eclipse的UI拖放接口并不怎么在乎。不過它確實(shí)令人印象深刻,很多工作需要在這里完成。
2.為多數(shù)人開發(fā)應(yīng)用
我們都喜歡使用較新的Android版本,因?yàn)樯厦鏁?huì)出來一些新的很酷的玩意兒。但是,目前市場(chǎng)上的Android智能手機(jī)還跟不上新版本發(fā)布的速度。所以在投入到編碼之前,應(yīng)該先做一個(gè)初步的調(diào)查??纯磁f版本編寫的應(yīng)用程序是否還是主流。如果答案是肯定的,那么想用新版本,你可能就還需要再等一段時(shí)間。
3.不要模擬器,直接上真家伙
模擬器不但非常的慢,而且測(cè)試的東西很有限。我一般只用它來測(cè)試我的應(yīng)用程序放到更大尺寸的屏幕上時(shí),看上去怎么樣,并且僅此而已。我的建議是,如果你想要節(jié)省時(shí)間,使用通過USB連接到真實(shí)設(shè)備。不過實(shí)際上你需要配備兩臺(tái)設(shè)備,因?yàn)橛行〇|西你需要做設(shè)備對(duì)設(shè)備的通信測(cè)試,比如說SMS、藍(lán)牙等。當(dāng)然如果第二個(gè)設(shè)備的屏幕尺寸與*個(gè)不一樣就更好了。設(shè)備越不同,應(yīng)用程序的測(cè)試效果就越好。
4.不喜歡XML?那悲劇了
所有Android的UI都是基于XML的,這一開始的時(shí)候讓我頭大無比。雖然也有其他工具可以完成UI的某些方面,比如Action Bar生成器(如Sherlock),但是目前我還不知道其他全面化的GUI生成工具。所有可視化的編輯工具,不是測(cè)試起來有bug就是不全面。所以,如果你知道什么好的工具,請(qǐng)讓我們這些XML狗知道。
5.使用模塊化的UI結(jié)構(gòu)
打造一個(gè)像樣的UI所需要的XML數(shù)量會(huì)變得迅速…令人望而生畏。因此,可以使用includes和fragments盡可能多地構(gòu)建在不同布局中都能重用的組件。fragments是在版本中引入的,不過如果你用早期版本開發(fā),那么也可以下載支持庫。
6.你需要一個(gè)設(shè)計(jì)師
或者你自己成為一個(gè)設(shè)計(jì)師。有一些在線工具,如Android Asset Studio,可以添加常見的GUI元素至你的應(yīng)用程序。如果這樣還不能滿足你的要求,那你就需要自己設(shè)計(jì)以適應(yīng)不同的屏幕。此外,請(qǐng)務(wù)必閱讀正式的Android Design指導(dǎo)方針。
7.使用適合的Android特定的解決方案
Android特定的解決方案通常更簡單,性能更好。以多線程和異步處理為例,在打開包之前考慮使用IntentService或AsyncTask。不過在某些情況下,這種做法可能會(huì)顯得繞遠(yuǎn)路。
8.谷歌仍然是我們的好朋友
雖然Android開發(fā)的官網(wǎng)上也有很多文檔,但是谷歌搜索的速度更快。舉個(gè)具體的例子,關(guān)于刪除SMS消息,用谷歌搜索到的在stackoverflow上面的真知灼見比官方文檔要多得多。
9.注意“神奇的工具”
具體就不點(diǎn)名了,不過一定要警惕那種宣稱可以全面簡化智能手機(jī)開發(fā)(包括Android、iOS和Blackberry RIM多種系統(tǒng))的產(chǎn)品。我并不是說這些產(chǎn)品就一定都是垃圾,但首先應(yīng)該確保通過開發(fā)一個(gè)簡單但有意義的應(yīng)用程序來測(cè)試它們,在它們上面進(jìn)行部署。每一個(gè)都應(yīng)該看上去像OS上的本機(jī)應(yīng)用程序一樣。當(dāng)然,如果你只需要為移動(dòng)設(shè)備開發(fā)一款Web應(yīng)用,那么可忽略此條。
10.所有好的軟件實(shí)踐仍然適用
廣泛的測(cè)試(比如說使用Monkey),設(shè)計(jì)國際化和本地化,使用設(shè)計(jì)模式等,都是很好的軟件開發(fā)實(shí)踐。
如果你覺得過于繁瑣,那么較少較少也應(yīng)該將UI代碼從業(yè)務(wù)邏輯中分離出來,即使是較小的應(yīng)用。否則在不久的將來,當(dāng)各種問題接踵而至的時(shí)候,你就追悔莫及了。
Android開發(fā)是一個(gè)令人興奮的體驗(yàn),讓我們一起加油吧。
鄭州尚學(xué)堂是一家專注于JAVA、WEB及Android培訓(xùn)的教育機(jī)構(gòu),遵從“以前沿技術(shù)為依托,以高薪就業(yè)為宗旨”的教學(xué)理念,擁有一支高學(xué)歷、高素質(zhì)的雙師型教師隊(duì)伍,均具備優(yōu)秀的職業(yè)履歷,集合數(shù)百位企業(yè)家溝通交流心得,結(jié)合自身的職場(chǎng)成長經(jīng)典案例,研發(fā)出了適合80后、90后快速成長的JAVA、WEB及Android培訓(xùn)課程大綱。針對(duì)*生的“一技之長”與就業(yè)問題,從企業(yè)角度出發(fā),用實(shí)際豐富的案例緊緊圍繞企業(yè)應(yīng)用開展教學(xué)培訓(xùn),全力打造“一出校門有人用,一進(jìn)職場(chǎng)高薪資”的優(yōu)秀軟件人才。
更多免費(fèi)的試聽課程等你來約!
【學(xué)校全名】:鄭州尚學(xué)堂Java培訓(xùn)
【地址】:鄭州市金水區(qū)文化路82號(hào)硅谷廣場(chǎng)B座9樓
【官方網(wǎng)址】:/