成爲Android開發人員很容易,但成爲一個成功的Android開發人員,而從其餘開發者中脫穎而出。要作到這一點,須要不少努力,激情,奉獻和毅力。編程
沒有快捷方式或簡單的方法,我可讓你成爲一個真正成功的開發人員。可是,若是你願意付出努力和須要的心,你必定會獲得你應得的一切成功。設計模式
在您成爲更好的Android開發人員的追求下,這裏有一些從個人經驗中幫助您的旅程中的一些小巧的專業技巧。因此,若是你已經決定進入Android開發階段,或者如今一直在作一個Android開發人員,你已經到了完美的地方。併發
因此,不用再浪費時間了,讓咱們開始吧。框架
我不是在說熟悉文檔,而是使用實際的Android框架代碼。我看到許多開發人員懼怕深刻了解Android框架內部的內容,並發現事情如何運做,以及不一樣的部分如何適當地組合在一塊兒。編程語言
若是您須要升級您的Android遊戲,請中止離開Android SDK的內部工做,並開始關注它。工具
Android很大,很大。在一兩個月左右的時間裏,您沒法徹底瞭解它的端到端。你學到的越多,你會發現更多的新東西來到你的路上。做爲一個初學者,恐怕會失敗是很是正常的。學習
可是儘可能避免。瞭解您真正須要學習的內容,以便開始使用您正在構建的應用程序,而後緩慢擴展視野。測試
大多數開發人員沒有時間去閱讀其餘開發者的寫做。他們大部分時間都在寫他們已經知道的內容。優化
但這不會幫助你做爲開發人員成長。這不會增長你的知識。您應該開始考慮其餘開源應用程序和庫,並開始學習。天天30分鐘的代碼閱讀是一個很好的開始。你會驚奇地發現你不知道的許多新事物。編碼
我不是告訴你學西班牙語或中文,而是學習新的編程語言。您須要保持本身的最新狀態,而不是僅僅將本身僅限於Android。這將打開您的觀點,並將幫助您顯着提升您的Android開發技能。想一想每一年至少學習一種新的編程語言。但不要只是一個星期的時間,而是離開它。嘗試進入語言的深度以及它在內部的工做。
從長遠來看,對於Android開發職業而言,我沒法強調這一點。不管什麼時候遇到關鍵編程問題,設計模式均可以幫助您構建優雅的解決方案。
您還須要與其餘開發人員在同一頁面上,以便在談論使用Factory或Decorator或Facade模式時當即知道它們的含義。
讓本身成爲每週學習一種新設計模式的承諾。
若是您開發了一些有用的東西,並在本身的應用程序中使用它,那麼請考慮開源。你將會在這個過程當中學到不少東西,幫助你成長爲開發者。
若是您沒有任何開放源碼,請考慮查看其餘有趣的開源項目並修復一些錯誤,改進文檔或在那裏編寫一些測試。
即便是最小的貢獻也將有助於項目維護者保持項目的運行。
開始花更多的時間瞭解您正在使用的IDE - Android Studio。它能夠作得比你想象的要好得多。在IDE中隱藏了許多酷炫的功能和快捷方式,大多數開發人員不知道甚至從何嘗試發現。
作一個習慣,發現新的更好的方式使您的工具爲您工做,從而提升您的工做流程和生產力。
大多數時候,咱們最終將全部咱們的代碼傾倒在活動或片斷中(你也能夠將個人罪惡歸咎於這個罪惡),將它們變成了幾乎不可能維護和測試的巨大的神物。
爲您的應用程序採用良好的體系結構,如MVP,MVVM,Redux等,這是很是重要的。請考慮將應用程序的業務邏輯,視圖交互以及數據交互分爲不一樣的層次,使其易於管理和測試。
你不能忽視這個。與不編寫乾淨代碼的開發人員至少保持Android開發的基本編碼指南變得很是困難。
它根本不是火箭科學,不該該花上幾個小時來學習大多數基本的Java和Android編碼指南。這不該該是一次性的,而是開發商的生活方式改變。
爲了讓本身比其餘開發人員更有優點,並構建好看起來很好的應用程序,您須要開始學習一些Android開發的最佳實踐。
這些是一些能夠幫助您成爲更好的開發人員並使您的應用程序脫穎而出的作法和不足。
嘗試正確有效地利用您的時間。有時候,當你上下班的時候,在健身房鍛鍊,開車,烹飪等,你的天才大腦並無太多的工做。
您能夠經過聆聽一些資源豐富的Android播客來利用這樣的時間。老是喜歡儘量地保持你的大腦佔據有用和有益的東西,並始終努力充分利用你的時間。
我已經看到這種狀況不只發生在我身上,並且與我和其餘幾位開發人員一塊兒工做。在開始工做以前思考一些事情是很是好的(很是好的),但過度思考和分析的事情除了沒必要要的混亂,拖延和焦慮以外,尚未任何其餘的東西。
作好如今彷佛對項目有好處,隨時能夠根據須要隨時適應不斷變化的狀況。
我能夠理解,做爲開發人員,您的主要重點是學習編寫更好的代碼,這也是很是明顯的。可是,若是您想成爲一名完整的開發人員,您應該開始花時間學習和了解UI和UX設計。
這將完全改變你一直在編寫應用程序的方式。嘗試與團隊中的UI和UX設計人員進行交流和交互,以更好地瞭解應用程序設計。
這是一個主觀話題,對我來講,「完美」可能不是對他人「完美」。可是,做爲一個大拇指規則,儘可能實現您須要交付的產品的最佳版本。
永遠不要沉默。不要爲了這件事而努力工做。熱衷於你正在作的工做,作得比別人更好。這將有助於您長期成長併成爲一名成功的開發人員。
若是您想成爲Android開發人員(或任何其餘生活中)的成功,您須要保持一致。
作幾天或幾周,而後戒菸不會帶你去任何地方。嘗試在將來幾年內將您想成爲Android開發人員的地方可視化,並堅持不懈的挑戰。
開始作某件事很容易,可是很長一段時間都會以相同的激情和奉獻精神繼續努力。
做爲開發人員,您應該老是嘗試將您正在開展的任何複雜問題或功能分解成能夠輕鬆,快速地理解和解決的小型,簡單和獨立的組件。
不要由於項目的初始大小或複雜程度而變得不知所措。一旦你在正確的軌道上,一切均可以解決。開始小,採起寶貝步驟,緩慢擴張。
手邊的練手項目能夠徹底改變你學習東西的方式。若是你在Android中遇到了一些新的東西,那就成爲一個習慣,立刻試試你的練手項目。
假設你發現一個有趣的Android圖書館。您只需輕輕一點地瀏覽文檔和API,您就能夠當即開始在練手項目中玩耍。這將使您對庫的瞭解更加深入。
我不能強調這是多麼重要。在您爲其進行詳盡測試以前,您沒法得出要完成的功能。測試將幫助您在您的代碼上創建自信島。
不要誤覺得忽視測試或將其視爲「可選」的東西,並使您的生活更加痛苦,之後的迴歸錯誤。記住,沒有測試編寫的代碼當即成爲遺留代碼。
當您開發應用程序時,請考慮以強大而有效的方式選擇構建應用程序,以便可以經受住時間的考驗。
開始遵循TDD 的「 紅 - 綠重構 」循環。首先寫出將失敗的測試用例(紅色),而後寫入實際代碼使測試經過(綠色),而後進一步清理和優化代碼。(重構)。
做爲開發人員,儘可能讓本身儘量少地使用自動化的應用程序,如應用程序質量檢查和發佈。您應該使用CheckStyle,PMD,Lint,FindBugs等工具自動完成質量檢查機制。在合併任何主要變動以前,運行全部單元和儀器測試是必須的。
當全部這些檢查經過時,您將得到綠色信號,將APK發佈到Play Store,或以任何其餘方式分發(如Crashlytics Beta)。
若是你想升級你的Android開發人員的技能,你必定要考慮採用反應式的方法。這將迫使您以徹底不一樣的方式思考您構建應用程序。
以反應的方式,確定會幫助您更快地編寫交互式應用程序,並將使您的開發生活更輕鬆又有趣。
Kotlin目前是Android開發中最受人關注的語言之一。如今也是開發Android應用程式的官方支持語言。這種易於使用的語言爲Android的世界帶來了新鮮空氣。
咱們的開發人員每每是內向的,喜歡坐在咱們電腦的角落,而且在咱們本身的世界。
可是嘗試移出您的溫馨區域,並與其餘開發人員進行更多的互動。當您參加開放聚會,社交聚會和與具備相似興趣的其餘開發人員交談時,有不少要學習的東西。
儘可能讓它成爲不要儘量不使用鼠標的習慣。幾乎全部要在Android Studio中執行的動做都有鍵盤快捷鍵。
這將大大減小您的開發時間並改善您的工做流程。記住鍵盤快捷鍵最初可能須要一些時間,但從長遠來看,它將幫助您實現真正無鼠標的工做流程。
在Android的龐大世界中,有不少東西能夠學習和理解,當您進入這個世界時,最初可能會壓倒你。可是,若是您讓本身在Android中學習一個新事物的承諾,每週都會變得容易。
列出你不知道的全部事情,爲他們分配優先事項,並每週一個接一個地開始贏得他們。幾個月後,你會發現本身的方式領先於你開始的地方。
咱們的工程師,由於出生而懶惰,老是試圖找到一個簡單的方法來作一個無聊的工做。
因此,若是你須要天天作一些重複和無聊的事情,那麼考慮自動化。它會累積地節省你每週不少時間,你能夠花費在其餘生產和有用的事情上,減小你的焦慮。
始終保持穩定版本的Android Studio,以執行您須要作的全部重要事情。並且還要考慮保持安裝的最新Android Studio的canary或beta版本。 有時候有不少新的和使人興奮的功能,讓他們的方式到這些早期的建設,你但願儘早讓你的手。
咱們都喜歡使用library,只要咱們須要它們,這也是很是好的。可是讓它習慣於審覈您在一段時間內添加的全部第三方庫,並刪除再也不須要的第三方庫。
若是您僅使用特定庫的一小部分,那麼請考慮提取該部分,而不是使用整個庫。偶爾的審覈也將幫助您更新迫切須要更新的庫。
不要一次徹底從新構建一個巨大的遺留代碼庫的錯誤。這樣作會讓你陷入一個沒有逃脫的陷阱。
而是考慮重構如今須要處理的代碼庫的部分,而後在須要時慢慢地擴展到其餘部分。另外,考慮編寫要重構的屏幕的測試用例,而後再觸摸您懷疑可能會破壞現有功能的任何代碼。
若是你想開發一個專業的應用程序,歷來沒有犯過在高端設備上開發和測試應用程序的錯誤。通常來講,咱們開發人員擁有高端旗艦產品,並用於開發和測試應用程序。但這是你應該絕對不要的東西。
嘗試將您的手放在市面上能夠找到的最便宜的和最低端的設備上,使之成爲開發應用程序的習慣。您將開始看到您之前不瞭解的應用程序的許多缺陷。
不要錯過購買低端工做機器,天天都會破壞您的開發經驗。