【云駐共創】學Android前你都要知道的:知識體系、書必看籍及職業發展
本次是面向零基礎入門者,整體上講解下Android工程師所需要掌握的知識,以及它的就業前景。
Android知識體系總覽
Android開發有四大組件,包括activity、broadcast、contentprovider以及service。Activity需要掌握它的生命周期、啟動模式、以及相關組件間的通信方式。FragmentFragment是Android3.0后引入的一個新的API,他出現的初衷是為了適應大屏幕的平板電腦,它可以將一個大的界面劃分成幾塊,然后進行分組,進行一個模塊化的管理,從而可以更加方便的在 運行過程中動態地更新Activity的用戶界面。
除了相關組件外,還要掌握Android的基礎布局,Android中有六大布局,分別是: LinearLayout(線性布局),RelativeLayout(相對布局),TableLayout(表格布局) FrameLayout(幀布局),AbsoluteLayout(絕對布局),GridLayout(網格布局)。我們調整屏幕的適配一般是將RelativeLayout + LinearLayout的weight屬性搭配使用。
Android的基本控件包括textview(文本框)、edittext(編輯框)、button(按鈕)與imagebutton(圖像按鈕)、imageview(圖像視圖)、RadioButton(單選按鈕)與Checkbox(復選框)、ToggleButton(開關按鈕)與Switch(開關)等等。
Android的系統框架是安卓系統的體系結構,android的系統架構和其操作系統一樣,采用了分層的架構是應用層(applications)、應用框架層(application framework)、類庫層以及系統內核層(linux kernel)。除了上面提到的以外,還要了解數據持久化、圖片、音視頻等等。還有輪子,輪子其中包括相關的網絡請求、異步通信、圖片加載以及依賴注入。當我們搭架完一個應用以后,還要進行相關的優化,從屏幕適配、繪制優化、卡頓優化、內存優化、存儲優化和穩定性等多個方面進行優化。
除了Android相關知識以外還要對相關的編程語言有所了解,主流的有JAVA和kotlin。其中java語言包括八大基本數據類型以及相關的引用類型,還有JDK開發環境的使用,和數組相關知識。
Kotlin 是一個基于 JVM 的新的編程語言,由 JetBrains 開發。JetBrains,作為目前廣受歡迎的 Java IDE IntelliJ 的提供商,在 Apache 許可下已經開源其Kotlin 編程語言。Kotlin開發之初就是希望能夠替代java,但是因為Java的龐大市場,因此替代是很難的。
除了編程語言以外,還要對計算機基礎課程有一定的了解,比如數據結構和計算機網絡。
數據結構是計算機存儲、組織數據的方式,是指相互之間存在一種或多種特定關系的數據元素的集合。通常情況下,精心選擇的數據結構可以帶來更高的運行或者存儲效率。數據結構往往同高效的檢索算法和索引技術有關。它能夠幫助你編寫出高效的算法,可以在性能上有很高的提升。計算機網絡是指將地理位置不同的具有獨立功能的多臺計算機及其外部設備,通過通信線路連接起來,在網絡操作系統,網絡管理軟件及網絡通信協議的管理和協調下,實現資源共享和信息傳遞的計算機系統,它能夠幫助你進行端與端之間的通信等等。我們還要了解相關跨平臺知識,手機系統主要是Android和IOS,很多應用基本都是支持兩個系統的。
職業方向
從事Android開發人員,主要崗位是Android開發工程師,Android工程師是指從事Android移動應用操作系統、游戲和各種Android平臺功能的應用、開發和測試的技術人員。
隨著Android平臺的擴張,引發了Android人才荒,2011年移動開發人才需求幾十萬,未來人才需求缺口將達百萬。加上5G的推出對整個行業的巨大推動作用,無疑將引爆智能手機手機開發工程師這個黃金職位。但符合條件的Android工程師屈指可數,在未來幾年內,Android開發工程師將成為3G行業炙手可熱的崗位之一。由此可見Android開發工程師就業前景還是挺好的。
常用工具與必備技能
Android應用開發一般是在集成環境中進行,這里IDE推薦使用Android studio,在團隊協作版本控制要會使用Git/SVN,還要學會使用抓包工具Charles,會解決相關的接口問題。除此還要會使用webview,調試Chrome://inspect。
除了會使用一些常用的工具,還要掌握一些必備技能包括,Gradle、簽名、打包、混淆、加固和防破解。隨著用戶對于個人信息的重視度越來越高,所以應用要格外的重視用戶信息的保護,提高安全性,避免被不法分子所破解,泄露客戶隱私。
書籍推薦
Android方面的書籍有很多,這個主要看個人喜好,找到適合自己的書籍,在這里向大家推薦基本,《Java編程思想》適合學習Java編程語言,除此還有《Effective java》,關于Android入門書籍推薦《第一行代碼Android》,進階書籍推薦《深入理解Android》。因為Android系統是基于Linux系統開發而來,所以學有余力的同學也可以看一下linux相關書籍,比如《深入理解Linux內核》。除此再推薦幾本其他有關的書籍,《重構》能夠幫助你搭架一個好的框架,《大話設計模式》能夠幫助你有個好的設計模式。
學習站點推薦
除了學習書籍以外,再給大家推薦幾個適合學習的網站,比如github,github是最大的開源網站,上面有很多相關的Android案例項目,大家可以自己去實踐操作一下,也可以將自己的開源項目、學習筆記放在上面和大家一起分享討論,相互促進,一起進步。當然除了github還有其他的一些網站,比如StackOverflow、CSDN、簡書、鴻洋等等。美團技術團隊也會時常發一些相關項目案例,還有Android開發技術周報以及老羅的Android之旅等等。
在文章結尾給大家在拓展一些其他的知識,手機平臺基本就是Android與IOS的天下,開發手機端應用,一般盡量兩個平臺都支持。微信小程序開發,依賴于微信客戶端,它有個缺點就是微信版本有所改動,可能就會引起接口的改變,有些功能可能就要發生改變,代碼要重寫。快應用的開發,基本和微信小程序一樣,知識擴大了范圍,可以在平臺上進行,不再是單單的只是支持微信客戶端。
本文整理自華為云社區內容共創活動第二期之【線上直播】1小時戲說Android進階路。
查看活動詳情:https://bbs.huaweicloud.com/forum/thread-111494-1-1.html
Android Java
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。