從事web前端的人很多,每個(gè)人的學(xué)習(xí)方式,學(xué)習(xí)習(xí)慣基本不會(huì)一模一樣!關(guān)于web前端(或者直接互聯(lián)網(wǎng)),大家都知道,是做到老,學(xué)到老的一個(gè)行業(yè)。之前寫文章的時(shí)候,我說過很多學(xué)習(xí)的方式和建議。今天換一下,說一下我個(gè)人不建議的學(xué)習(xí)方式,或者我個(gè)人覺得是妨礙進(jìn)步的學(xué)習(xí)方式,希望大家引以為鑒!如果大家有什么補(bǔ)充和指點(diǎn)的,歡迎指出。大家一起交流意見,互相幫助!
這個(gè)可以說是學(xué)習(xí)的最大的一忌,也是提醒過最多的一個(gè)注是事項(xiàng)!網(wǎng)上的教程有許多許多,各個(gè)語言,各個(gè)知識(shí)點(diǎn),各方面的都有,javascript,html5,css3等的一些,隨便一搜就一大把,畢竟互聯(lián)網(wǎng)最大的優(yōu)勢之一就是資源共享!但是很多人看教程就只是看教程,不動(dòng)手實(shí)操。即使博客的教程,視頻教程再好,自己不動(dòng)手實(shí)操,寫代碼,這樣的學(xué)習(xí)方式,記憶根本不深刻,容易遺忘,到頭來,可能什么都沒學(xué)會(huì)!而且有些教程,如果沒有跟著動(dòng)手實(shí)操,可能會(huì)蒙圈。個(gè)人建議:要挑覺得適合自己的教程,也要?jiǎng)邮謱?shí)操,寫代碼。即使不是邊看教程編寫代碼!在看完了教程之后,一定要自己動(dòng)手實(shí)操!過程中,可能會(huì)遇到些問題,但是這樣才會(huì)學(xué)習(xí)到更多,記憶也更加牢固!
這個(gè)情況,針對javascript(下稱:js)現(xiàn)在沒有以前嚴(yán)重了,在我大學(xué)和實(shí)習(xí)期間,那個(gè)時(shí)間還是jquery傲視群雄的時(shí)候。很多人會(huì)在聊天的時(shí)候會(huì)說:有了jquery,為什么還要學(xué)js?有了vue,為什么還要學(xué)js?面對這樣的提問,我那時(shí)候沒有回答,心里想:jquery或者vue就是用js實(shí)現(xiàn)的,不會(huì)js,學(xué)jquery或者vue第一學(xué)得吃力,第二學(xué)jquery或者vue肯定不會(huì)很深入。而且,萬一有時(shí)候,項(xiàng)目不允許用jquery或者vue,那就基本不會(huì)寫代碼了。這時(shí)候,如果學(xué)習(xí)其它的框架或者庫,基本又等于重新學(xué)一門語言了。個(gè)人建議:先把基礎(chǔ)(html+css+js)打牢,再學(xué)其他框架或者庫。雖然在會(huì)js的情況下,我不敢說學(xué)js的框架或者庫就是查文檔,查API。但至少學(xué)js框架或者庫可以不會(huì)那么吃力!
這個(gè)就是我之前的一個(gè)習(xí)慣,只顧著寫代碼,不知道:耦合,實(shí)例化,繼承等專業(yè)術(shù)語,和別人交流,無限蒙圈!根本不知道別人在說什么!互聯(lián)網(wǎng)的技術(shù)更新的速度非常的快,隔三差五就發(fā)布一個(gè)框架,一個(gè)庫,一個(gè)工具。雖然不是每一個(gè)更新的技術(shù)都需要學(xué)習(xí)。但是如果只顧著寫代碼,不了解新的技術(shù)。這樣很容易使自己停止不前,失去競爭力。個(gè)人建議:在寫代碼之余,要確保自己是不是了解代碼,對代碼有沒有一個(gè)認(rèn)識(shí)。以及多點(diǎn)留意消息,看下有沒有什么技術(shù)更新!如果覺得更新的技術(shù)很實(shí)用,或者自己有興趣,可以多了解下!畢竟互聯(lián)網(wǎng)是一個(gè)做到老,學(xué)到老的一個(gè)領(lǐng)域,技術(shù)更新的很快,如果跟不上流行的趨勢,說不定自己會(huì)被淘汰呢!
這個(gè)情況,比較普遍,無論是在學(xué)?;蛘呤乾F(xiàn)在的培訓(xùn)機(jī)構(gòu)。很多學(xué)習(xí)前端的人,基礎(chǔ)沒打牢,就在那里揚(yáng)言要做一個(gè)大項(xiàng)目,我聽到的有的人想做知乎,有的人想做世紀(jì)佳緣等等一些偉大的目標(biāo)!但是全部人都是連網(wǎng)站的業(yè)務(wù)流程和邏輯都沒弄清,最后越搞越亂,就放棄了!之前的偉大目標(biāo)都成了爛尾樓,作用最多就是一個(gè)代碼練習(xí)的作用!花了大量的時(shí)間,做了一件沒很大的實(shí)際意義的事情!個(gè)人建議:從簡單到復(fù)雜,復(fù)雜的網(wǎng)站,都是有很多簡單的模塊。不妨先從簡單的功能做起,做完了一個(gè)功能再往里面加功能!現(xiàn)在所處的公司就是這樣,開發(fā)的后臺(tái)管理系統(tǒng),開發(fā)幾個(gè)月了,從一個(gè)只有員工的登錄注冊的功能,然后再逐一加功能,到現(xiàn)在項(xiàng)目逐漸完善?。╳eb前端學(xué)習(xí)交流群:328058344 禁止閑聊,非喜勿進(jìn)?。?/p>
這個(gè)情況就是多見于培訓(xùn)機(jī)構(gòu)出來的人。我不知道是不是所有城市都是這樣,但是廣州這邊,給我的感覺就是這樣。就是目標(biāo)不切實(shí)際,對自己也不夠認(rèn)識(shí)!之前在群聊的時(shí)候,在金三銀四那段時(shí)間,很多人找工作,聊天的時(shí)候也遇到過很多培訓(xùn)機(jī)構(gòu)的人。簡歷上是各種精通,剛畢業(yè)在培訓(xùn)機(jī)構(gòu)培訓(xùn)幾個(gè)月,要么就是自帶兩三年工作經(jīng)驗(yàn),要么就是說自己培訓(xùn)了幾個(gè)月,技術(shù)水平和市面上兩三年的人差不多??傊褪前炎约捍档脽o所不能!但是一出題,就十問九不知。問閉包是什么,不知道;問原型是什么,不知道。問繼承是什么,還是不知道。這里就得說下,我印象深刻的一道題了。這道題我就是用來對付那些人的!看到哪個(gè)人各種精通,各種吹。我立馬出這道題,結(jié)果沒一個(gè)能回答正確,題目在下面!
alert(a) a(); var a=3; function a(){ alert(10) } alert(a) a=6; a();
上面所說的,只是一個(gè)表面的現(xiàn)象,更重要的就是,好高騖遠(yuǎn)這個(gè)情況,很有可能會(huì)導(dǎo)致自己難以找到工作!因?yàn)橐恍┢髽I(yè)認(rèn)為最高只能給你4000工資,但是你自己卻認(rèn)為自己有實(shí)力拿到9000以上的工資。這樣情況,很難找到工作!給人的印象也不好!更重要的是,這可能會(huì)影響自己的職業(yè)選擇!個(gè)人建議:從實(shí)際出發(fā),評(píng)估自己。想下自己會(huì)什么,能給企業(yè)帶來什么!也可以停下別人的建議,和對比下別人的技術(shù)水平和工資,或者是上網(wǎng)找一些面試題,看下自己能不能完成那些面試題!最后評(píng)估下自己,認(rèn)為自己處于什么位置!
這一點(diǎn),相信很多人都有感觸,就在開發(fā)上,遇到上一個(gè)或者幾個(gè)自己覺得沒辦法實(shí)現(xiàn)的需求或功能。千方百計(jì)地想著逃避,比如:這個(gè)功能不是很重要,不做可以嗎?這個(gè)功能我從來沒弄過,搞不定的。這個(gè)功能外包給別人做吧,我們做不了!很多一些逃避話語。大家可以想下,如果每次都是逃避,那么時(shí)間一久,自己技術(shù)水平是不是還停留在基礎(chǔ)那個(gè)階段?以后要怎么提升自己的技術(shù)水平。個(gè)人建議:迎難而上。在web前端開發(fā)這塊,如果遇上了難題是正常的,如果沒遇到難題就是見了鬼!面對難題,我們應(yīng)該是挑戰(zhàn)難題,而不是逃避!大家都想提升自己的技術(shù)水平,挑戰(zhàn)難題不就是一個(gè)很好的提升技術(shù)水平的實(shí)戰(zhàn)機(jī)會(huì)嗎?如果完成了之前認(rèn)為不可能完成的難題,這樣就是一個(gè)技術(shù)水平提升的見證!不是嗎?我也覺得,每天就寫簡單的業(yè)務(wù)代碼,不探索新知識(shí),不挑戰(zhàn)難題,這樣做開發(fā)也沒多少意思!
這個(gè)也是一個(gè)很常見的情況,很多人認(rèn)為寫的代碼能用就行,能實(shí)現(xiàn)需求就行!根本不管日后的優(yōu)化。在開發(fā)項(xiàng)目或者開發(fā)插件上,雖然我也是提倡:先實(shí)現(xiàn),再優(yōu)化這個(gè)方式!但是并不代表我開發(fā)完了就完了,不會(huì)再想優(yōu)化!如果不試著去優(yōu)化自己的代碼,不探索寫代碼的更好方式,以后別說編寫高質(zhì)量,簡潔的代碼了,因?yàn)樽约喊褜W(xué)習(xí)編寫高質(zhì)量,簡潔的代碼的一個(gè)重要途徑給封鎖了。還有一個(gè)就是,項(xiàng)目上,有些問題可能是潛在的,就是現(xiàn)在看著項(xiàng)目沒出現(xiàn)什么問題,但并不代表以后不會(huì)出現(xiàn)問題。反而在項(xiàng)目開發(fā)完了之后,試著去優(yōu)化自己的代碼,探索更好的實(shí)現(xiàn)方式,試著編寫出高質(zhì)量,簡潔的代碼。這樣難道不是一個(gè)很好的學(xué)習(xí)過程嗎?至于優(yōu)化代碼的方式,很多很多(比如常說的:代碼過于重復(fù),是否引入設(shè)計(jì)模式?網(wǎng)站性能一般,可否進(jìn)行優(yōu)化?),優(yōu)化這一塊,也不是說一步就優(yōu)化到最好的,而是至少不會(huì)比以前差!關(guān)于優(yōu)化,我之前也發(fā)過一些資源。很容易找到,網(wǎng)上的資源更是很多!大家挑著看便是!
不懂不問,這個(gè)大家都知道,就是遇到問題,從不問同事或者通過其他方式咨詢別人。就是自己在那里苦思冥想,嘗試各種解決方案。這樣的方式,最壞的結(jié)果就是最終還是解決不了問題,讓同事來詢問開發(fā)情況。最好的結(jié)果問題解決了,但是解決問題所花的時(shí)間會(huì)肯定很多。不懂立刻問,這個(gè)就是詞面的意思。遇到問題馬上問別人。自己沒怎么思考或者根本不思考。這樣能解決問題,但是這樣會(huì)導(dǎo)致自己可能會(huì)頻繁的問同事,會(huì)搞得同事很不耐煩。如果把同事的耐心磨沒了,可能回答的語氣可能不會(huì)很好。這樣不僅影響同事之間的關(guān)系,還會(huì)讓自己之后不敢再請教同事,有讓自己處于上面所說的不懂不問的風(fēng)險(xiǎn)。個(gè)人建議:適時(shí)請教。遇到不懂的問題,先自己結(jié)合上下文思考下,想下以前有沒有遇到這個(gè)問題,解決不了去網(wǎng)上找解決方案,如果還沒有解決問題,這個(gè)時(shí)候再問別人,問同事或者通過其它渠道問別人。這樣自己有了思考,解決問題的時(shí)候記憶也很深刻,也不會(huì)頻繁的打擾同事!
這個(gè)次面上跟上面的差不多,但實(shí)際上不一樣!不懂裝懂就是去問別人的時(shí)候,實(shí)際上別人的講解并沒有完全聽懂,可能是礙于面子或者是因?yàn)椴缓靡馑即驍_別人那么久,或者擔(dān)心打擾別人太久,所以裝作很懂。但是這樣可能忽悠得了一時(shí),很快又會(huì)露出馬腳。這樣會(huì)搞得隔一會(huì)又要去問別人同樣的問題,這樣反而會(huì)搞得別人更加尷尬,更加為難!自己也會(huì)打擾別人更多的時(shí)間!個(gè)人建議:如果有問題去問別人,只要你問的人不是一個(gè)非常沒有耐心的人。他都會(huì)耐心的解答你的問題!所以,當(dāng)問別人問題的時(shí)候,一定要確保自己是已經(jīng)弄懂了問題的緣由,同事一遍沒解釋清楚,自己直接回答不明白,相信很多人都會(huì)再詳細(xì)的解釋一遍。如果擔(dān)心同事工作忙或者其它原因,可以挑一個(gè)合適的時(shí)間!我現(xiàn)在問同事就是,要么不問,要問就切底弄懂!當(dāng)然了,我的同事都很有耐心,每次我有什么問題,他們都會(huì)耐心解答,甚至是擴(kuò)展開來講!
很多人在接到需求之后,第一反應(yīng)就是寫代碼,即使是在自己沒把需求理清楚之前也是照樣寫代碼。另一種情況就是,很多人是邊寫代碼,邊想需求。這個(gè)開發(fā)方式,萬一自己對需求理解有誤!可能會(huì)導(dǎo)致自己寫的代碼,很大一部分都要修改,甚至是全部刪除重寫。沒理清楚需求就寫代碼這個(gè)情況,發(fā)生的概率應(yīng)該挺大的,但是一般來說很難發(fā)現(xiàn)這個(gè)情況,畢竟程序員對代碼的增刪改查是再正常不過了!我本身也不知道,就是在一次的技術(shù)分享中,老大提出來的,他的建議就是對于一些稍微復(fù)雜一點(diǎn)的需求,先理清楚需求,簡單畫個(gè)流程圖,然后在代碼里面,先寫上一點(diǎn)注釋,再開始動(dòng)手寫代碼!對于這一點(diǎn),我現(xiàn)在就是在執(zhí)行當(dāng)中!除非需求真的很簡單,否則我都會(huì)在草稿本上簡單畫一下流程圖。根據(jù)流程圖,寫好注釋,再寫代碼,這樣會(huì)比較有條理,代碼也清晰,日后的返工也可能會(huì)有,但是不會(huì)像以前那么多!在開發(fā)時(shí)間上,效率上,都得到了一個(gè)提升!
web前端現(xiàn)在的行情,我不知道其它城市,但是廣州確實(shí)是不太好,競爭也很大,差不多是100人爭一個(gè)職位,其中的原因就是培訓(xùn)機(jī)構(gòu)林立以及前端入門簡單。面對這樣的情況,我們能做的,只有時(shí)刻學(xué)習(xí),提升自己的技術(shù)水平。這樣才能保證自己有很大的競爭力,能夠從這么多人中脫穎而出。對于學(xué)習(xí)和提升自己,除了應(yīng)該有適合自己的學(xué)習(xí)方式,也該對一些妨礙進(jìn)步的學(xué)習(xí)方式引以為鑒!上面10點(diǎn)是我自己的一些想法。希望對大家有用!最后一個(gè)就是,如果打擊有什么好的學(xué)習(xí)方式或者不好的學(xué)習(xí)方式,歡迎指點(diǎn)。讓大家交流意見,相互學(xué)習(xí)!
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com