99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

程序員的自學心態(tài)是怎樣的

工程師人生 ? 來源:工程師吳畏 ? 2018-12-28 15:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近半年因為項目清閑,做了很多自學計劃,很多都是心血來潮,也并沒有都堅持下來,比如學習C語言、學習Spring和web基礎知識、學習操作系統(tǒng)等。在這個過程中,突然意識到“心態(tài)”是學習中一個很重要的部分。程序員大部分是獨自學習的,很容易進入一個懶惰或焦慮的極端狀態(tài),當心態(tài)不穩(wěn)定時,會發(fā)現(xiàn)時間眼睜睜地流過,而你卻無法進步,這是一種很難受的狀態(tài)。當心態(tài)健康時,不僅能保持穩(wěn)定的學習速度,還能在學習中得到快樂,進入一個正向循環(huán)。

樓主是一個凡人,資質(zhì)平庸,學習的目的無非是提高競爭力,使自己不至于某天淪為公司裁員的犧牲品。如果你有更清晰的夢想和目標,說明你比樓主層次高很多,歡迎來指點樓主。

為學而學是不行的

一開始學習時,樓主看了許多帖子,里面的Java大神們都在說:要提高技術,就要不停地看源碼,甚至自己造輪子……年輕的樓主深受這種理論影響,不屑于搞業(yè)務而日日研究如HashMap源碼這樣枯燥的東西,甚至計劃自己寫一套collection framework,把大神們造過的輪子再造一遍,似乎只要寫完這一套東西就能立地成佛,能搞定所有的業(yè)務和bug。

當我開始寫HashMap的時候就發(fā)現(xiàn),為了寫而寫是一種很蠢的行為。一個輪子內(nèi)部的那些看似精巧繁雜的結構,存在的意義是為了讓輪子更好更長久地運轉(zhuǎn),而不是工程師為了炫技而創(chuàng)造的。如果我們沒有一個實用的目標,反而會浪費時間,迷失在一些看上去很神秘的細節(jié)中。其實,像HashMap這樣的數(shù)據(jù)結構,只需了解它大致的工作原理就可以了,余下的代碼細節(jié)可以在使用有疑惑或者出了問題時再去看。

再比如,樓主看面經(jīng)中總是提到JVM調(diào)優(yōu),因此覺得這是Java程序員進階所必備的知識,于是就買了書和教程去看,但是發(fā)現(xiàn)對于調(diào)優(yōu)這個話題看書效率奇低,書上比較多的是一些描述性的內(nèi)容,如JVM的內(nèi)存分布和垃圾處理算法;還有一些實用性的內(nèi)容,比如調(diào)優(yōu)工具、調(diào)優(yōu)案例。有些內(nèi)容反復看了又看,回想起來腦子里卻不剩什么,遠沒有看完一個算法后的那種條理清晰的感覺。而花在這個問題上的時間卻遠遠超過看算法的時間。

這幾個周,同事要做一個自動化測試工具,問大家有什么好的建議。樓主想到自己一直學調(diào)優(yōu)而無所得,靈機一動,提議在工具中加入調(diào)優(yōu)功能,得到了同事認可。同事給樓主大概介紹了一些調(diào)優(yōu)思路,推薦了一些資料去看。樓主希望爭取到這個親自實現(xiàn)調(diào)優(yōu)功能的機會,于是幻想自己即將面臨各種性能問題,為了解決這些問題開始儲備知識,然后驚異地發(fā)現(xiàn)學習有了層次,樓主不再死板地按章節(jié)看書了,可以自動地篩選出重要和不重要的內(nèi)容,甚至可以在腦中形成清晰的脈絡了!

所以計算機是一門實踐科學這句話一定要深刻理解。因為偏實踐,所以不可能當王語嫣,因為許多理論是從實踐中來的,好比數(shù)學公理,只能從實踐中得到感性認識,無法從其他的理論推測得來,也無法死記硬背。樓主是一個學院派的人,在這方面吃了不少苦。從中總結出的方法論是:

計算機科學的知識大多是偏實踐的,學習這些知識不能只看理論,要依托于實踐。實踐和理論應該是兩條互相纏繞的螺旋線,當實踐無法繼續(xù)進行時就去看理論,當理論看起來無法理解更深時就去實踐。

實踐最好是一個項目,但大多數(shù)情況要自己提需求,尋找實踐方法。可以是個人項目,也可以是自己的各種小demo等等,形式不限,學到就行。

學習與任何事一樣,都需要務實。技術只是人們?yōu)榱私鉀Q問題而創(chuàng)造的,包括那些聽起來很高大上的框架和名詞。只要懷著負責任的信念去做事一定會接觸到各種各樣的問題,面臨問題自然會去思考解決方法,在這個思考的過程中,你實際上就開始接觸了設計模式、JVM原理、計算機組成、網(wǎng)絡協(xié)議等等……所以,不可以鄙視平時在公司做的那些看似簡單的業(yè)務。

持續(xù)輸出

長時間的學習很容易懈怠,陷入一種被動接受知識的狀態(tài)。另外,一個人的思想永遠不可能顧全所有方面。

比如,樓主的朋友最近想學習Java,于是樓主自告奮勇,每天給他介紹二十分鐘Java基礎。當說到垃圾處理時,樓主自然地老生常談:Java內(nèi)存分為新生代和老年代,一般的GC只對新生代進行收集,而只有老年代也沒有空間了才會進行Full GC……朋友眨著天真的眼睛問樓主:為什么要分兩個區(qū)進行收集,而不是每次都對所有內(nèi)存進行垃圾處理呢?樓主驚訝地發(fā)現(xiàn)自己答不出來,因為從未想過這個問題……

今天樓主復習時無意中發(fā)現(xiàn),書里其實有介紹這么做的原因,即大部分對象都是朝生夕死的,按年齡分代并頻繁地收集新生區(qū)比較貼合這個模型,這樣既能照顧到常用的內(nèi)存,也能保證垃圾處理能在比較短的時間內(nèi)結束。這一段樓主其實看過多遍了,但竟然從未將兩者聯(lián)系起來,也未思考過分區(qū)設計的原因……

又比如,有一次面試時面試官問Java線程池中核心線程數(shù)和最大線程數(shù)的區(qū)別。樓主輕車熟路地說:核心線程數(shù)是線程池的初始線程數(shù),最大線程數(shù)是線程池能擴展到的最大線程數(shù),只有任務隊列提交滿時才會擴容。面試官接著問道:“那你想過為什么要這么設計嗎?”樓主支吾半天也沒答上來……事后一想,其實很簡單,就是為了既能重用線程,減少線程開銷,又能滿足偶爾的大規(guī)模請求而已。這么簡單,為何當時沒想到呢?

……因為平時看書的時候就缺乏思考啊……

對于樓主這種口號上的巨人、思考上的矮子,除了經(jīng)常給別人講東西從而被別人挑戰(zhàn)之外,還有一個好辦法,就是堅持寫博客。

博客是一篇文章,需要有文章結構這種東西,為了使你的博客顯得比較有邏輯性,你會被逼著去梳理知識點之間的邏輯,以及一門技術的由來、歷史、產(chǎn)生背景等等。在梳理過程中,你會發(fā)現(xiàn)看書時遺漏的點被填滿了。另外,把思路寫出來能進一步強化你對知識的印象。而且,持續(xù)寫博客會給你的學習造成一種健康的儀式感,即使一開始沒有太多讀者,你也會愛上這種輸出的感覺,反過來督促自己為了寫出更多博客而堅持學習。

行動緊張,但心情輕松

焦慮是自學最大的敵人。有一陣子看到朋友看書很快,自己也想加快腳步,可是卻打亂了自己的一貫節(jié)奏。又有一陣子,像著了魔一樣四處搜尋名人自傳、大神博客,然后發(fā)現(xiàn)自己跟大神的差距要以數(shù)十年計,陷入一種無止境的焦慮。

樓主愿意相信,焦慮并不是完全不好的狀態(tài),因為它證明一個人想要進步,想跟那些優(yōu)秀的人比肩。但是,“認識自己”也是一門非常重要的學問。每個人都是不同的,現(xiàn)在跟大神差距很大并不意味著幾年后還會差距很大;但是有一個堅持下去的秘笈,跟跑馬拉松一樣,就是不要看別人,不要看終點。要做到這一點,先要接受自己的平凡,這樣才能平心靜氣地去吸收知識、抵御外界的影響,而持續(xù)的焦慮只能適得其反。

如果每天都抱著一個遠大的夢想,正襟危坐地努力學習,會發(fā)現(xiàn)很快就累了。之所以看電視劇不容易累,是因為潛意識就告訴自己在玩。如果學習的時候,也可以調(diào)整到一個好玩的心態(tài),把問題當作小樂趣去解,會發(fā)現(xiàn)不知不覺就沉浸在解題的樂趣中,而感受不到時間的流逝,這種狀態(tài)是學習的上乘狀態(tài)。

一些啰嗦

樓主是個心高氣傲的人,花了許多時間才接受自己是凡人這個事實。或許這個打擊來得越早,就越容易踏實地走腳下的路。

跟初高中就開始學算法、寫游戲,大學拿到ACM金牌,畢業(yè)后幾家大公司隨便選的大神相比,樓主實在是天資愚鈍,大學時僅有的一門編程課——C語言學得異常痛苦,研究生時自學編程磕磕絆絆,做畢設時經(jīng)常晚上十一點被導師的郵件揪起來——代碼又出現(xiàn)了問題。樓主天資平庸,工作平凡,在寫代碼上沒有任何具體的目標,比如“要做出一款炫酷的RPG游戲”這樣的……

為了這個事實,曾經(jīng)非常焦慮。喜歡拿自己跟別人比,唯一的結論就是還差得太多,連別人初中的水平都不如,得趕快補上……于是買書做計劃,每天都要完成計劃的指定部分,比如讀十頁書等等,這樣也堅持了一段時間,但是因為壓力比較大,學習效率實在不高,很久之后感覺還在入門邊緣徘徊。

也不是說時間不重要,畢竟有著名的“一萬小時定律”擺在那。但是看似努力學習超過一萬小時而還沒成為大牛的人也是有的。從我自身的經(jīng)驗,還是“進入狀態(tài)”最靠譜。拿我自己來說,進入狀態(tài)后兩天學到的可能比沒進入狀態(tài)時幾個周學到的都多,絕不夸張。

所以,最近越來越相信方法論了。

如果你看到這里,說:樓主說得都很有道理,但我缺乏學習的動力,怎么辦?推薦你去看一下阮一峰的《未來世界的幸存者》 。你會發(fā)現(xiàn)作者對未來人類文明坍塌的預言可能超出你最悲觀的想象。作者認為,隨著現(xiàn)代科技的爆發(fā)式發(fā)展,社會貧富分化將迅速加劇,中產(chǎn)階級將逐漸消失。那些無法理解現(xiàn)代科技的人會沉到社會下層,淪為科技的奴隸;而由于AI技術的快速發(fā)展,大部分本屬于中產(chǎn)階級的程序員都將失業(yè),失業(yè)后由于看不到希望,沉溺于虛擬游戲這樣的“精神毒品”度過貧窮的一生。在這樣的魔幻世界中,“終生學習”已經(jīng)不是一句口號,而是一個人清醒地生存在世界上的必需……

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

    關注

    4

    文章

    954

    瀏覽量

    30409
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    家電電路識圖自學手冊

    家電電路識圖自學手冊
    發(fā)表于 07-11 15:49 ?0次下載

    程序設計與數(shù)據(jù)結構

    的地址)出發(fā),采用推導的方式,深入淺出的分析了廣大C程序員學習和開發(fā)中遇到的難點。 2. 從方法論的高度對C語言在數(shù)據(jù)結構和算法方面的應用進行了深入講解和闡述。 3. 講解了絕大多數(shù)C程序員開發(fā)
    發(fā)表于 05-13 16:45

    如何在 樹莓派 上編寫和運行 C 語言程序?

    ,一本很好的書是BrianKernighan和DennisRitchie所著的《TheCProgrammingLanguage》。這本書對經(jīng)驗豐富的程序員和想學習C語
    的頭像 發(fā)表于 03-25 09:28 ?564次閱讀
    如何在 樹莓派 上編寫和運行 C 語言<b class='flag-5'>程序</b>?

    零基礎入門:如何在樹莓派上編寫和運行Python程序?

    是一種非常有用的編程語言,其語法易于閱讀,允許程序員使用比匯編、C或Java等語言更少的代碼行。Python編程語言最初實際上是作為Linux的腳本語言而開發(fā)的。Py
    的頭像 發(fā)表于 03-25 09:27 ?728次閱讀
    零基礎入門:如何在樹莓派上編寫和運行Python<b class='flag-5'>程序</b>?

    MATLAB R2020a完全自學一本通附帶的程序

    本帖最后由 yuu_cool 于 2025-2-28 15:12 編輯 MATLAB R2020a完全自學一本通附帶程序,配合書使用 獲取資料可下載附件哦?。。?!
    發(fā)表于 02-28 14:39

    阿里云升級通義靈碼AI程序員,全面上線

    近日,阿里云宣布其備受矚目的通義靈碼AI程序員已正式全面上線,為開發(fā)者帶來更為強大和便捷的編程輔助工具。 此次上線的通義靈碼AI程序員,在功能上實現(xiàn)了全面升級?,F(xiàn)在,它支持VS Code
    的頭像 發(fā)表于 01-09 11:16 ?714次閱讀

    TMS320C6000程序員指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000程序員指南.pdf》資料免費下載
    發(fā)表于 12-24 17:19 ?0次下載
    TMS320C6000<b class='flag-5'>程序員</b>指南

    TMS320C55x DSP CPU程序員參考補充

    電子發(fā)燒友網(wǎng)站提供《TMS320C55x DSP CPU程序員參考補充.pdf》資料免費下載
    發(fā)表于 12-21 11:36 ?3次下載
    TMS320C55x DSP CPU<b class='flag-5'>程序員</b>參考補充

    UCD3138A64/UCD3138128程序員手冊

    電子發(fā)燒友網(wǎng)站提供《UCD3138A64/UCD3138128程序員手冊.pdf》資料免費下載
    發(fā)表于 12-09 14:42 ?0次下載
    UCD3138A64/UCD3138128<b class='flag-5'>程序員</b>手冊

    機械革命發(fā)布CODE AI程序員

    近日,英特爾新質(zhì)生產(chǎn)力技術生態(tài)大會在成都舉行,機械革命作為重要參展商帶來了多款明星產(chǎn)品引爆全場!其中更是在AI PC軟件生態(tài)產(chǎn)品發(fā)布分論壇上,Intel、智譜、機械革命三方聯(lián)合發(fā)布了專為程序員設計的CODE AI程序員本,成為本次大會的一大亮點。
    的頭像 發(fā)表于 11-30 10:34 ?1102次閱讀

    Linux驅(qū)動程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動程序程序員指南.pdf》資料免費下載
    發(fā)表于 11-22 15:53 ?0次下載
    Linux驅(qū)動<b class='flag-5'>程序</b><b class='flag-5'>程序員</b>指南

    AI編程工具會不會搶程序員飯碗

    AI編程工具可輔助編程,減少手動編碼,提升效率,對程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識應對。長遠看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?528次閱讀

    軟通動力子公司鴻湖萬聯(lián)助陣鴻蒙1024程序員節(jié)成功舉辦

    10月24日,在武漢、成都、深圳等地政府指導下,鴻蒙生態(tài)服務公司舉辦了一場面向廣大開發(fā)者的盛會——鴻蒙1024程序員節(jié)暨鴻蒙原生應用交流會。軟通動力子公司鴻湖萬聯(lián)作為開源鴻蒙生態(tài)的重要參與者和貢獻者
    的頭像 發(fā)表于 10-29 15:49 ?749次閱讀
    軟通動力子公司鴻湖萬聯(lián)助陣鴻蒙1024<b class='flag-5'>程序員</b>節(jié)成功舉辦

    第五屆長沙·中國1024程序員節(jié)開幕

    據(jù)官方媒體報道,10月24日;? 第五屆長沙·中國1024程序員節(jié)在湖南湘江新區(qū)開幕;本次中國1024程序員節(jié)以“智能應用新生態(tài)”為主題。設置有岳麓對話、技術英雄會、主題峰會及賽事、展覽等活動,一場
    的頭像 發(fā)表于 10-25 15:42 ?494次閱讀

    京東上萬程序員都AI用它!

    對大模型生成代碼進行智能修復,為程序員開啟代碼漏洞修復的“自動駕駛”模式,不但減少人工接入、提高工作效率,更為企業(yè)抵御內(nèi)外部各種攻擊構建起一道堅固的安全屏障,確保業(yè)務的連續(xù)性和穩(wěn)定性。 JoyCoder是京東云自主研發(fā)的一款輔助開發(fā)人員
    的頭像 發(fā)表于 07-17 16:29 ?491次閱讀
    京東上萬<b class='flag-5'>程序員</b>都AI用它!