對Android初學者的10個建議
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
這些Android開發的技巧都是我個人的經驗。總共10條,所以我又把它們叫做是“Android開發的10大技巧”。如果想看有關程式設計方面的技巧,推薦《受益無窮的遺產——程式設計十誡》。
下面讓我們進入正文:
1.IDE的選擇
大多數Android開發是在Eclipse中進行的,其實IntelliJ IDEA的社群版也挺不錯,我用它非常順暢地編寫了一些應用程式。就個人而言,我對於Eclipse的UI拖放介面並不怎麼在乎。不過它確實令人印象深刻,很多工作需要在這裡完成。
2.為多數人開發應用
我們都喜歡使用最新的Android版本,因為上面會出來一些新的很酷的玩意兒。但是,目前市場上的Android智慧手機還跟不上新版本釋出的速度。所以在投入到編碼之前,應該先做一個初步的調查。看看舊版本編寫的應用程式是否還是主流。如果答案是肯定的,那麼想用新版本,你可能就還需要再等一段時間。
3.不要模擬器,直接上真傢伙
模擬器不但非常的慢,而且測試的東西很有限。我一般只用它來測試我的應用程式放到更大尺寸的螢幕上時,看上去怎麼樣,並且僅此而已。我的建議是,如果你想要節省時間,使用通過USB連線到真實裝置。不過實際上你需要配備兩臺裝置,因為有些東西你需要做裝置對裝置的通訊測試,比如說SMS、藍芽等。當然如果第二個裝置的螢幕尺寸與第一個不一樣就更好了。裝置越不同,應用程式的測試效果就越好。
4.不喜歡XML?那悲劇了
所有Android的UI都是基於XML的,這一開始的時候讓我頭大無比。雖然也有其他工具可以完成UI的某些方面,比如Action Bar生成器(如Sherlock),但是目前我還不知道其他全面化的GUI生成工具。所有視覺化的編輯工具,不是測試起來有bug就是不全面。所以,如果你知道什麼好的工具,請讓我們這些XML狗知道。
5.使用模組化的UI結構
打造一個像樣的UI所需要的XML數量會變得迅速…令人望而生畏。因此,可以使用includes和fragments儘可能多地構建在不同佈局中都能重用的元件。fragments是在3.0版本中引入的,不過如果你用早期版本開發,那麼也可以下載支援庫。
6.你需要一個設計師
或者你自己成為一個設計師。有一些線上工具,如Android Asset Studio,可以新增常見的GUI元素至你的應用程式。如果這樣還不能滿足你的要求,那你就需要自己設計以適應不同的螢幕。此外,請務必閱讀正式的Android Design指導方針。
7.使用適合的Android特定的解決方案
Android特定的解決方案通常更簡單,效能更好。以多執行緒和非同步處理為例,在開啟java.util.concurrent包之前考慮使用IntentService或AsyncTask。不過在某些情況下,這種做法可能會顯得繞遠路。
8.谷歌仍然是我們的好朋友
雖然Android開發的官網上也有很多文件,但是谷歌搜尋的速度更快。舉個具體的例子,關於刪除SMS訊息,用谷歌搜尋到的在stackoverflow上面的真知灼見比官方文件要多得多。
9.注意“神奇的工具”
具體就不點名了,不過一定要警惕那種宣稱可以全面簡化智慧手機開發(包括Android、iOS和Blackberry RIM多種系統)的產品。我並不是說這些產品就一定都是垃圾,但首先應該確保通過開發一個簡單但有意義的應用程式來測試它們,在它們上面進行部署。每一個都應該看上去像OS上的本機應用程式一樣。當然,如果你只需要為移動裝置開發一款Web應用,那麼可忽略此條。
10.所有好的軟體實踐仍然適用
廣泛的測試(比如說使用Monkey),設計國際化和本地化,使用設計模式等,都是很好的軟體開發實踐。
如果你覺得過於繁瑣,那麼最少最少也應該將UI程式碼從業務邏輯中分離出來,即使是最小的應用。否則在不久的將來,當各種問題接踵而至的時候,你就追悔莫及了。
Android開發是一個令人興奮的體驗,讓我們一起加油吧。
譯文連結:http://www.codeceo.com/article/10-tips-beginning-android-dev.html
英文原文:A Few Tips for Beginning Android Development
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- 一個牛人給Java初學者的建議Java
- 寫給Git初學者的7個建議Git
- 給初學者的20個CSS實用建議CSS
- 對於嵌入式初學者建議讀的書
- 對程式設計師初學者的3條基本建議程式設計師
- 給Java開發初學者的10個學習建議,助你學習事半功倍!Java
- 給Java開發初學者的10個學習建議,助你學習事半功倍Java
- Linux系統管理——初學者建議Linux
- go語言開發入門:GO 開發者對 GO 初學者的建議Go
- Linux入門(2)_給初學者的建議Linux
- 給windows media初學者的一點建議 (轉)Windows
- 零基礎學Java?給初學者的建議Java
- 學習筆記—給Linux初學者的建議筆記Linux
- 給初學者一些學習Python的建議Python
- 給予Java初學者的建議(JavaWeb/後臺開發)JavaWeb
- 國外PHP大師給初學者的8條建議PHP
- 給初學者的 6 個 Android 加密工具Android加密
- JavaScript初學者建議:不要去管瀏覽器相容JavaScript瀏覽器
- 給Python初學者的一些程式設計建議Python程式設計
- 對Java初學者的忠告Java
- 高效開發Android App的10個建議AndroidAPP
- 對初學ERP人員的建議
- 分享:高效開發Android App的10個建議AndroidAPP
- 談一談全棧,為什麼不建議初學者去做全棧
- Android初學者的疑惑與“死板”的Android初學之路Android
- (原創) C語言初學者建議的書籍 (C/C++) (C)C語言C++
- 給初學者的 Android 加密工具Android加密
- 令PHP初學者的困惑的10個知識點PHP
- 40+個對初學者非常有用的PHP技巧(二)PHP
- 40+個對初學者非常有用的PHP技巧(一)PHP
- PHP初學者必須掌握的10個知識點PHP
- 給初學者,因為我就是個初學者(3) (569字)
- 給JAVA初學者最忠誠的建議——怎樣20天擺脫菜鳥行列?Java
- 10 個 Redis 建議/技巧Redis
- Python初學者的17個技巧Python
- c++初學者的50個忠告C++
- 專門針對初學者的Node.js教程--四個例子絕對可用Node.js
- 10 篇對初學者和專家都有用的 Linux 命令教程Linux