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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

一名Android開(kāi)發(fā)工程師的學(xué)習(xí)之路

工程師人生 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:工程師吳畏 ? 2018-08-03 09:37 ? 次閱讀

最近因?yàn)樵趯W(xué)習(xí)一些新的東西,所以Android的東西沒(méi)有怎么更新。趁著有些閑工夫,簡(jiǎn)單說(shuō)說(shuō)技術(shù)上的學(xué)習(xí),也算是自己對(duì)這幾年工作來(lái)的一個(gè)小結(jié)和經(jīng)驗(yàn)吧。

希望這篇文章可以給那些在校的,亦或是才踏入工作沒(méi)多久的程序員同伴們一些幫助。畢竟我自己也曾經(jīng)止步不前,不知所措迷茫過(guò)。

英語(yǔ)

老實(shí)說(shuō),沒(méi)有比英語(yǔ)性價(jià)比更高的,需要學(xué)習(xí)的東西了??恐鴦e人的翻譯,或者機(jī)翻,終究不是辦法的。筆者自己日語(yǔ)英語(yǔ)姑且算是熟練掌握的地步,但在初期直接看那些全英文的書籍,仍然會(huì)覺(jué)得頭痛(謝謝HKUST虐我),但堅(jiān)持下來(lái)就會(huì)發(fā)現(xiàn)其實(shí)計(jì)算機(jī)的英語(yǔ)還是有一個(gè)范圍的,多看看熟悉起來(lái),就會(huì)覺(jué)得并沒(méi)有什么難,甚至比起很多翻譯來(lái)說(shuō)更容易看懂。

混跡GitHub就會(huì)發(fā)現(xiàn)國(guó)內(nèi)的很多開(kāi)發(fā)者英語(yǔ)上欠缺還是很大的,尤其是一些description和readme直接就上中文的。即便你英語(yǔ)渣,機(jī)翻也行啊。畢竟是計(jì)算機(jī)社區(qū),英語(yǔ)才是通用語(yǔ)言。用中文去一些國(guó)外開(kāi)發(fā)者的倉(cāng)庫(kù)里提issue或者回復(fù)也是一種很粗魯?shù)男袨椤?/p>

如果讓我說(shuō)一種對(duì)技術(shù)幫助做大的語(yǔ)言,那必然就是英語(yǔ)。有了英語(yǔ),才能真正地獨(dú)立學(xué)習(xí)。

Google

問(wèn)小白問(wèn)題之前,你Google過(guò)嗎?如果讓我看到一個(gè)開(kāi)發(fā)動(dòng)不動(dòng)去搜百度,那我估計(jì)會(huì)武斷地認(rèn)定他很菜。其實(shí)Google是我們最好的老師,只要能正確把握問(wèn)題的關(guān)鍵字,幾乎沒(méi)有找不到的答案,大部分會(huì)在StackOverflow上,其他散落在GitHub、博客等等地方。

如果你要找的知識(shí)實(shí)在冷門,比如react native的一些深入用法,android上的視頻so閹割這種,那恐怕只能找找做這塊的朋友或者自己研究了,國(guó)內(nèi)有一些好心的開(kāi)發(fā)者或許會(huì)分享在自己的博客。

至于科學(xué)上網(wǎng),這個(gè)話題相關(guān)的技術(shù)太多了,請(qǐng)自行找方法,VPN也好,SS也好,都很簡(jiǎn)單,相對(duì)的投入和產(chǎn)出對(duì)程序員來(lái)說(shuō)性價(jià)比是很高的。實(shí)在不想花錢的去用AWS的免費(fèi)云服務(wù)器搭SS也行。

實(shí)踐

看是沒(méi)有用的。比如看一篇關(guān)于Hybrid App原理的文章,或許它寫得很好,但其實(shí)就算看完了,讓我自己去寫一個(gè),或者講講怎么去做一個(gè)我們應(yīng)用的版本,Android/iOS端通用的方案,最后也是支支吾吾說(shuō)的不知所以。最后還是要去實(shí)踐做一些Hybrid頁(yè)面才能真正掌握,能說(shuō)清楚這里面的原理和應(yīng)用場(chǎng)景。

紙上談兵終覺(jué)淺。

警惕體力勞動(dòng)

當(dāng)你的工作成為一種體力勞動(dòng),而自己無(wú)法從中獲得新的體驗(yàn)和知識(shí)的時(shí)候,需要警惕究竟發(fā)生了什么。

想得太少

對(duì)做的內(nèi)容停留在完成的階段,而不對(duì)更好的方案,實(shí)現(xiàn)細(xì)節(jié)去思考更多,比如用了某個(gè)API,會(huì)不會(huì)去仔細(xì)看看其究竟是怎么做的?;蛟S你知道Handler,Looper,那你知不知道主線程的一切,四大組件的生命周期,各種View的觸摸事件都是消息驅(qū)動(dòng),在mainLooper里面進(jìn)行處理的呢?

工作內(nèi)容重復(fù)

當(dāng)Focus在一塊上太久之后,難免會(huì)碰到這種瓶頸,這時(shí)候可以看看是不是能換一塊做,比如做做緩存、Hybrid、啟動(dòng)優(yōu)化、視頻等等。可以做的領(lǐng)域很多,實(shí)在發(fā)現(xiàn)興趣不在此,換著做后臺(tái)或者前端也行。倘若因?yàn)閭€(gè)人原因,比如公司不讓換或者可能工資會(huì)低很多,擠一擠時(shí)間在side project里面搞搞也可以,只是有沒(méi)有心的問(wèn)題罷了。

我面試過(guò)一些做Android 5-6年的程序員,但大部分真的連一些優(yōu)秀的2-3年經(jīng)驗(yàn)的開(kāi)發(fā)者都遠(yuǎn)遠(yuǎn)不如,問(wèn)設(shè)計(jì)不懂設(shè)計(jì),問(wèn)流行的開(kāi)源項(xiàng)目回答就是“好像聽(tīng)說(shuō)過(guò)”。我不希望我認(rèn)識(shí)的開(kāi)發(fā)者以后變成這樣的人。但你若是總是重復(fù)勞動(dòng),難免像這樣1年的工作經(jīng)驗(yàn)重復(fù)了5年。

在額外學(xué)習(xí)的時(shí)候,更多關(guān)注的應(yīng)該是不同的地方,而不是說(shuō)這個(gè)學(xué)Python,下個(gè)月去學(xué)Go,想想語(yǔ)言的差異性在哪里,自己試試看做一些項(xiàng)目,培養(yǎng)全棧工程師的底子。還在念大學(xué)的時(shí)候,我學(xué)了C、C++、Java、Node.js、Python、Ruby、PHP、HTML、Perl、SQL/Redis/HBase等等等等,但對(duì)每個(gè)的理解都不夠深刻,現(xiàn)在想來(lái)那時(shí)候是做錯(cuò)了的,思考的都不夠深刻,也直到這一兩年,我才足夠明白這個(gè)錯(cuò)誤。

你應(yīng)該有自己的專長(zhǎng),但也要能從全局的角度思考問(wèn)題,一個(gè)不懂前端的后端老大會(huì)導(dǎo)致前端過(guò)重不靈活,反正只要自己這兒的模塊清晰就好,一個(gè)不懂前端的前端老大也會(huì)讓下面的人不要抱怨,做出來(lái)就好。

公司問(wèn)題

發(fā)生在一些項(xiàng)目經(jīng)理逼得特別緊,老大又比較無(wú)能的地方。項(xiàng)目經(jīng)理為了向上面交待,對(duì)工程師說(shuō)“這個(gè)進(jìn)度能不能再壓一下呀”,或者干脆直接不聽(tīng)工程師的意見(jiàn)強(qiáng)行縮短工期,導(dǎo)致沒(méi)有時(shí)間去深入學(xué)習(xí)。老大明知這種情況,卻睜一只眼閉一只眼。這種公司,還是離開(kāi)為妙。

一個(gè)合格的leader,或者說(shuō)mentor應(yīng)該做些什么?至少?gòu)奈业慕嵌葋?lái)看,盡管對(duì)公司他需要對(duì)項(xiàng)目負(fù)責(zé),但對(duì)團(tuán)隊(duì)內(nèi)的開(kāi)發(fā)者,他更應(yīng)該做的是觀察和指導(dǎo),看清楚那些團(tuán)隊(duì)毒瘤(不做正經(jīng)事,得過(guò)且過(guò),假加班,搶功勞推脫責(zé)任,等等),營(yíng)造團(tuán)隊(duì)氛圍,而不是一味Push催進(jìn)度和表現(xiàn)自己。

記錄和總結(jié)

寫博客是為了什么?

至少對(duì)我來(lái)說(shuō),寫下的東西更多是對(duì)自己的一個(gè)總結(jié)和交待。如果我能寫下來(lái),至少能證明我有信心自己確實(shí)是這么去理解的,沒(méi)有去坑人。另外,姑且也算是一種成長(zhǎng)的足跡吧,偶爾自己還會(huì)去看看筆記。

分享也是目的之一,希望大家能互相進(jìn)步,這樣才能促進(jìn)發(fā)展。

寫博客也好,寫一些筆記也好,點(diǎn)點(diǎn)滴滴也是對(duì)自己的一種整理。

問(wèn)自己

想清楚自己要的究竟是什么。

做全還是鉆?想做一個(gè)超強(qiáng)并發(fā)量的后臺(tái)?想黑別人的系統(tǒng)?想做出精準(zhǔn)有效的推薦算法?還是想做別人能實(shí)際用到的產(chǎn)品?

筆者正是因?yàn)橄胍氖呛笳?,所以成為了Android開(kāi)發(fā)(為什么沒(méi)有選iOS,大約是Android的開(kāi)放性吸引了我)。而現(xiàn)在,因?yàn)榘l(fā)現(xiàn)自己欠缺的(對(duì)前端駕輕就熟,大部分的事情對(duì)我來(lái)說(shuō)只是體力活,而自己想承擔(dān)一個(gè)完整的項(xiàng)目卻又不行),所以又重新拾起了Node.js,看起了ES6,思考設(shè)計(jì)和產(chǎn)品的問(wèn)題。

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

    關(guān)注

    12

    文章

    3909

    瀏覽量

    126934
  • Google
    +關(guān)注

    關(guān)注

    5

    文章

    1752

    瀏覽量

    57334
  • 工程師
    +關(guān)注

    關(guān)注

    59

    文章

    1563

    瀏覽量

    68386
收藏 人收藏

    評(píng)論

    相關(guān)推薦

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

    相關(guān)的實(shí)驗(yàn)室項(xiàng)目或參加開(kāi)源項(xiàng)目以積累寶貴的項(xiàng)目經(jīng)驗(yàn)。 4.不斷學(xué)習(xí)與成長(zhǎng) 嵌入式軟件領(lǐng)域的技術(shù)更新速度非常快,因此,作為一名嵌入式軟件工程師,需要不斷學(xué)習(xí)與成長(zhǎng),保持對(duì)新技術(shù)的敏感性和
    發(fā)表于 06-12 11:20

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師是軟件開(kāi)發(fā)領(lǐng)域中的種專
    發(fā)表于 05-16 11:00

    如何成為一名嵌入式C語(yǔ)言高手?

    如何成為一名嵌入式C語(yǔ)言高手? 嵌入式系統(tǒng)是當(dāng)今科技領(lǐng)域的核心,而C語(yǔ)言則是嵌入式系統(tǒng)開(kāi)發(fā)中最常用的編程語(yǔ)言之。成為一名嵌入式C語(yǔ)言高手需要長(zhǎng)時(shí)間的
    發(fā)表于 04-07 16:03

    如何成為一名嵌入式C語(yǔ)言高手?

    如何成為一名嵌入式C語(yǔ)言高手? 嵌入式系統(tǒng)是當(dāng)今科技領(lǐng)域的核心,而C語(yǔ)言則是嵌入式系統(tǒng)開(kāi)發(fā)中最常用的編程語(yǔ)言之。成為一名嵌入式C語(yǔ)言高手需要長(zhǎng)時(shí)間的
    發(fā)表于 03-25 14:12

    位硬件工程師的歷練之路:從入門學(xué)習(xí)理論到... #搞笑 #硬件工程師 #電子工程師 #揚(yáng)興科技

    硬件工程師揚(yáng)興科技
    揚(yáng)興科技
    發(fā)布于 :2024年03月13日 17:50:21

    單片機(jī)如何通過(guò)代碼控制硬件:一名工程師的分享

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

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

    就帶大家細(xì)數(shù)下優(yōu)秀電源工程師具備的那些技能。、新手必備課程成為一名電源高手需要扎實(shí)的理論基礎(chǔ),涉及電路原理、語(yǔ)言編程和控制理論等多個(gè)學(xué)科領(lǐng)域。為了幫助大家更好地掌握電源
    發(fā)表于 01-29 11:29

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

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

    為何大廠急招鴻蒙開(kāi)發(fā)工程師?別有洞天

    正確看待鴻蒙不再兼容安卓版本,而大廠急招鴻蒙工程師舉動(dòng)已經(jīng)是預(yù)料之中的。我們步步來(lái)看鴻蒙是怎么發(fā)展過(guò)程的。為什么互聯(lián)網(wǎng)大廠急招鴻蒙開(kāi)發(fā)崗位? 鴻蒙的發(fā)展歷程 華為歷經(jīng)4年,從20
    發(fā)表于 01-08 19:59

    一名嵌入式工程師的漲薪經(jīng)歷

    下面是位嵌入式工程師的漲薪經(jīng)歷,希望可以幫助到你,幫到其他的在校學(xué)生。 ? 階段 1 大到大三這個(gè)階段我與大多數(shù)學(xué)生相同: ? 、學(xué)習(xí)
    的頭像 發(fā)表于 01-05 08:39 ?392次閱讀

    【2023電子工程師大會(huì)】單片機(jī)/RTOS/Linux全棧工程師

    【2023電子工程師大會(huì)】單片機(jī)/RTOS/Linux全棧工程師修煉之路ppt
    發(fā)表于 01-03 16:31 ?40次下載

    優(yōu)秀電源工程師的必備技能大揭秘!

    隨著電源市場(chǎng)的不斷擴(kuò)張,開(kāi)關(guān)電源行業(yè)飛速發(fā)展,企業(yè)對(duì)電源工程師的需求日益增加,對(duì)電源工程師的技能要求也日漸提高,相信沒(méi)有位電源工程師會(huì)錯(cuò)過(guò)讓自己變得更優(yōu)秀的機(jī)會(huì)。作為
    的頭像 發(fā)表于 12-19 08:23 ?1609次閱讀
    優(yōu)秀電源<b class='flag-5'>工程師</b>的必備技能大揭秘!

    FPGA工程師需要具備哪些技能?

    、設(shè)計(jì)思路 FPGA芯片是開(kāi)發(fā)高速數(shù)字電路設(shè)計(jì)的理想解決方案之。FPGA芯片基于HDL的設(shè)計(jì)方法允許工程師使用高級(jí)語(yǔ)言進(jìn)行設(shè)計(jì)。因此,F(xiàn)PGA工程師需要具備設(shè)計(jì)思路能力,包括分析需
    發(fā)表于 11-09 11:03

    如何成為一名優(yōu)秀的嵌入式工程師?

    如何成為一名優(yōu)秀的嵌入式工程師?嵌入式學(xué)習(xí)的第步,首先是C語(yǔ)言。 1.理解內(nèi)存管理:C語(yǔ)言不同于高級(jí)語(yǔ)言,它不會(huì)自動(dòng)管理內(nèi)存。因此,你需要理解并掌握如何使用malloc()、fre
    發(fā)表于 11-07 15:36