0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

如何成為一名Android高級工程師

工程師人生 ? 來源:網(wǎng)絡整理 ? 作者:工程師吳畏 ? 2018-08-28 09:13 ? 次閱讀

什么是Android高級工程師

這個強調(diào)一個概念,快速。

如果一個開發(fā)者,想成為一個高級工程師,去做高級工程師需要做的事,了解一個高級工程師需要的知識,然后一步一步學習,都弄懂弄會,這樣就是一個高級工程師了,這個過程可以量化,就是學習會這些知道就行,如果想繼續(xù)進階可能就不是量化的問題了,這里只討論Android高級工程師的問題。那么如何成為一個高級Android工程師,就變得比較清晰了。

學會基礎知識

Java基礎,多線程,泛型,反射,IO,異常處理,集合框架等等都需要吃透。

Android基礎,四大組件,Android的是異步調(diào)用,View的 繪制流程,觸摸事件流程,都應該吃透

還有很多不一一列舉了,這些是基礎部分。

進階學習

基礎的東西,也要進階,這個是同步的,比如多線程應該了解多線程并發(fā)庫等高級用法,什么類加載器,垃圾回收等等都應該有個自己的了解,還有第三方庫,至少都會使用大部分庫吧,什么Gson,F(xiàn)astJson,EventBus,Volley,Okhttp ,Glide,F(xiàn)resco,ButterKnife 。等等都應該有會熟練使用把。這寫也只是中級程序員就應該掌握了的內(nèi)容。

高級程序員應該掌握上面的所有內(nèi)容作為基礎內(nèi)容,還要了解每個技術的原理和作用。對第三方庫不只是使用,還要了解原理,還要能根據(jù)原理自己寫出一部分庫。能封裝自己的庫。而不是只停留在使用上面,這些東西使用都是非常簡單的,看一下文檔就能用了,可能用額不夠精準,但是作為一個高級程序員,是一定一定要知道他們實現(xiàn)的原理的,計算寫不出一樣的代碼,也能知道人家是怎么實現(xiàn)的,這是一個高級程序員最低的標準了。

快速成為Android高級工程師會遇到的問題

多看書,多做項目,看什么書網(wǎng)上推薦的特別多。

那么問題來了??磿湍艹蔀楦呒壒こ處煟鲰椖烤湍艹蔀楦呒壒こ處?,看看文章就能成為高級工程師。如果可以的話,那么我直接買幾本書,在家看看,然后做幾個小項目就好了。如果這樣就能成為高級工程師,那么我就先在家好好學習學習,然后成為高級工程師,再去找工作吧,這樣不是很好么。當然這是不可能的,或者說大多數(shù)人是不可能的,不排除有那些天才啦,還有刻苦和會學習的人?;蛟S很多人會說,這個是看工作年限的, 如果你工作都沒工作,怎么可能會是高級工程師呢,這確實是個問題,雖然你的能力確實跟你工作年限有關,但是這些東西確實不只是靠年限堆出來的。而且這些東西確實也不是只看書就能看出來的,這里需要的是一個系統(tǒng)的學習過程。

這里強調(diào)一下,一定是一個系統(tǒng)的學習過程,要把很多東西方方面面都了解,吃透,這個過程需要很長一段時間,快的話二三年,慢的畫5年以上也正常。確實不是很快能吃透的,第一是東西確實挺多,第二是東西確實比較抽象,真的理解還會使用,需要一個系統(tǒng)的學習和使用過程。但是大部分二三的工程師達不到這個水平,可以說真的少之又少,那么這些東西學多久適合呢,我定的標準是三年,如果一個工程師,按正常的流程學習,正常工作,一點點進步,三年左右達到這個水平,一般都是可以的。只是這樣的工程師真的不多,而大多數(shù)是三年之后,最多是個中級水平。這個就是現(xiàn)在軟件開發(fā)的現(xiàn)狀。

我見過太多三五年的工程師的基礎太爛了,為什么強調(diào)基礎,如果基礎不吃透,你去學習別的東西會花費更多的時間,而很多人就是這樣不注重基礎,他們可能會很多新的框架,新的技術,但是就是不去學習基礎,然后他們最多也只是會用別人的框架,根本連框架原理都弄不明白,更別說寫一個框架了,所以這里強調(diào)基礎的重要就是,只有你有基礎你才能真的去理解別人的代碼,你能更有效的控制你的代碼。

那么為什么現(xiàn)在的工程師很多是這樣的呢,第一點,就是大多數(shù)人,不知道應該如何學,很多東西,也想學不知道如何下手,別人代碼看不懂,又覺得自己基礎還行,不愛看基礎的東西,總想直接學好更高級的東西,這樣惡性循環(huán)就變成了,基礎沒學好,高級的東西學不會。如果有人注重基礎,慢慢一步一步啃會是什么樣子呢,那么他會花很大一部分時間去學習基礎的理論,然后基礎弄扎實了,在學習高級點的東西,這樣可以么。答案又是否定的。如果死扣基礎,不去學習高級的東西。這個過程會遇到一系列新的問題,基礎不知道應該學什么,學到什么程度,需要花費多少時間學習,然后學完了怎么用,然后什么時候復習這些問題。就變成了不知道學什么了反而基礎也沒有學好,還是沒有什么用的狀態(tài)。

那么如何快速成為Android高級工程師呢

通過上面的分析之后我們考慮,我們?nèi)绾慰焖俚某蔀橐粋€優(yōu)秀的Android開發(fā)工程師呢。

第一步 夯實基礎。

Java基礎,多線程,泛型,反射,IO,異常處理,集合框架等等都需要吃透。

Android基礎,四大組件,Android的是異步調(diào)用,View的 繪制流程,觸摸事件流程,都應該吃透

這個是前提

第二步 多寫代碼。

只看不寫效果是最差的,只寫不看都比這好一點,那么代碼一定要寫出來,然后一步步測試。讓代碼在自己的掌握之中。

做項目會讓你看到很多你需要了解的東西,能檢驗你對很多東西的了解。

做項目會讓你積累很多看書無法了解的東西。

第三步 分析代碼。

如果你有基礎,你可以分析別人寫的代碼,看看人家代碼的原理,這個是必須要了解的。

要不要自己寫各種第三方庫,能寫當然是好的,但是精力有限。全寫必然費時費力。你有那么多時間么,所以可以寫幾個就行了。

也可以看網(wǎng)上的文章,看別人如何分析第三方庫原理的,做到理解,這樣能快速的理解第三方庫的原理,但是這樣做也有弊端,就是你只是看了一遍,然后也就忘了,最好跟著人家的分析簡單寫寫代碼,看看你寫的跟人家到底有什么區(qū)別,一個是了解自己的實力,一個是能真的看到人家是如何去實現(xiàn)這個東西的,了解項目的精髓。

第四步 開發(fā)自己的框架庫。

如果前幾個做好了,這個就變成水到渠成的東西了。

開發(fā)自己的框架有很多好處。

第一個就是證明自己的能力,有能力開發(fā)一個適合自己在工作中使用的框架的能。比如說一個工具類庫。

第二個對代碼的掌控力,有自己的框架,如果項目需求有什么修改,自己能知道如何修改達到自己的項目需求,如果使用的是第三方的,可能沒辦法去修改。

第三個就是開發(fā)自己的框架,能更快速的開發(fā)自己的項目。自己寫的東西總比別人的熟悉。

這個過程做完,基本也就達到一個高級工程師應該有的水平了,這些東西只要學都能學會。

這樣一步一步來肯定能成功,但是這并不是一個優(yōu)等的方案。一個好的方案是,有一個更好的指導,指導我什么時候應該看什么,應該學什么,知道自己哪里不會,然后知道如何去學,可是這個東西確實缺失的,不會有那么一個人,那么了解我的情況。然后根據(jù)我的情況,幫我量身定做一個學習計劃,然后根據(jù)具體情況,制定不同時期的不同計劃,然后給我講解,我看不懂的東西。其實我在學習的過程中一直希望有那么一個人,會一直指引我去學習,一直指導我,如何去進步,幫我解決我工作學習過程中遇到的問題。

計劃

本人做Android7年,也經(jīng)歷了各種迷茫期,各種瓶頸期。我想做一個東西,這個東西,能幫更多的程序員,從一個技術小白到一個高級的Android工程師。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Android
    +關注

    關注

    12

    文章

    3938

    瀏覽量

    127548
  • 工程師
    +關注

    關注

    59

    文章

    1571

    瀏覽量

    68558
收藏 人收藏

    評論

    相關推薦

    為什么嵌入式驅動開發(fā)工程師可以拿高薪?

    技術領域具有不可替代的地位。 成為一名優(yōu)秀的嵌入式驅動工程師只需要深耕以下幾點: 1)堅實的技術基礎: 首先,需要有堅實的基礎,包括計算機組成原理、微處理器與微控制器架構以及電路設計與硬件接口知識
    發(fā)表于 01-07 16:56

    OpenAI從谷歌DeepMind挖角三高級工程師

    近日,據(jù)Wired最新報道,OpenAI在人才爭奪戰(zhàn)中取得了顯著成果,成功從競爭對手谷歌DeepMind“挖角”了三高級計算機視覺和機器學習領域的專家。 據(jù)悉,這三工程師分別是Lu
    的頭像 發(fā)表于 12-04 14:13 ?313次閱讀

    運行GDE時會出現(xiàn)斷音如何解決?

    你好TI 的高級工程師我在運行該GDE 時 會出現(xiàn)斷音如何解決?
    發(fā)表于 10-22 07:10

    嵌入式軟件工程師如何提升自己?

    嵌入式軟件工程師如何提升自己? 作為一名嵌入式軟件工程師,在這個充滿機遇和挑戰(zhàn)的領域里,如何提升自己顯得非常重要,它決定了你未來的發(fā)展方向和成就。接下來,我們起探討
    發(fā)表于 06-12 11:20

    DSP

    有沒有誰做過DSP、微型逆變器/微逆變/大型工業(yè)逆變器、嵌入式軟件的軟硬件高級工程師?
    發(fā)表于 06-11 16:48

    索尼誠邀軟件工程師參與PS免費手游平臺設計

    據(jù)悉,近日,澳大利亞知名媒體TweakTown發(fā)現(xiàn),索尼互動娛樂正在為其旗下的PlayStation Studios Mobile招募一名資深的軟件工程師,負責設計PlayStation的免費手機游戲平臺。
    的頭像 發(fā)表于 05-23 17:08 ?739次閱讀

    華大九天主任工程師吳大可榮獲“2024年首都勞動獎章”!

    “五一”國際勞動節(jié)前夕,《2024年首都勞動獎狀、獎章和北京市工人先鋒號名單》發(fā)布,其中,北京華大九天科技股份有限公司主任工程師,正高級工程師吳大可博士榮獲“2024年首都勞動獎章”。
    的頭像 發(fā)表于 04-30 17:01 ?1021次閱讀

    如何成為一名嵌入式C語言高手?

    如何成為一名嵌入式C語言高手? 嵌入式系統(tǒng)是當今科技領域的核心,而C語言則是嵌入式系統(tǒng)開發(fā)中最常用的編程語言之成為一名嵌入式C語言高手
    發(fā)表于 04-07 16:03

    如何成為一名嵌入式C語言高手?

    如何成為一名嵌入式C語言高手? 嵌入式系統(tǒng)是當今科技領域的核心,而C語言則是嵌入式系統(tǒng)開發(fā)中最常用的編程語言之。成為一名嵌入式C語言高手
    發(fā)表于 03-25 14:12

    單片機如何通過代碼控制硬件:一名工程師的分享

    今天跟大家聊聊單片機是怎樣通過代碼來操控硬件的。作為一名單片機工程師,我們平時的工作就像是給單片機編寫“指令集”,讓它按照我們的意圖去驅動各種硬件設備。
    的頭像 發(fā)表于 03-06 14:46 ?1542次閱讀
    單片機如何通過代碼控制硬件:<b class='flag-5'>一名</b><b class='flag-5'>工程師</b>的分享

    嵌入式人工智能的就業(yè)方向有哪些?

    及驅動開發(fā)初級 嵌入式內(nèi)核及驅動開發(fā)中級 嵌入式內(nèi)核及驅動開發(fā)高級 四:嵌入式開發(fā)高級工程師 嵌入式開發(fā)與拓展實踐 SourceInsight、Git工具使用 五:C++開發(fā)工程師,QT開發(fā)
    發(fā)表于 02-26 10:17

    優(yōu)秀電源工程師需要哪些必備技能?

    就帶大家細數(shù)下優(yōu)秀電源工程師具備的那些技能。、新手必備課程成為一名電源高手需要扎實的理論基礎,涉及電路原理、語言編程和控制理論等多個學科
    發(fā)表于 01-29 11:29

    鴻蒙Harmony是如何影響Android工程師的呢?

    迅猛,目前已經(jīng)有包括社交、金融、影音、游戲、資訊、食品等多個領域的企業(yè)以及開發(fā)者加入到鴻蒙的生態(tài)建設中,可以說是從日常工作生活的各個領域全面展開。 為什么會影響Android開發(fā)工程師? 因為自從華為
    發(fā)表于 01-14 22:14