1.前言
從事web前端的人很多,每個人的學習方式,學習習慣基本不會一模一樣刹悴!關(guān)于web前端(或者直接互聯(lián)網(wǎng))给猾,大家都知道,是做到老颂跨,學到老的一個行業(yè)。之前寫文章的時候扯饶,我說過很多學習的方式和建議恒削。今天換一下,說一下我個人不建議的學習方式尾序,或者我個人覺得是妨礙進步的學習方式钓丰,希望大家引以為鑒!如果大家有什么補充和指點的每币,歡迎指出携丁。大家一起交流意見,互相幫助兰怠!
2.具體情況
1.只看教程梦鉴,不動手實戰(zhàn)
這個可以說是學習的最大的一忌,也是提醒過最多的一個注是事項揭保!網(wǎng)上的教程有許多許多肥橙,各個語言,各個知識點秸侣,各方面的都有存筏,javascript,html5味榛,css3等的一些椭坚,隨便一搜就一大把,畢竟互聯(lián)網(wǎng)最大的優(yōu)勢之一就是資源共享搏色!但是很多人看教程就只是看教程善茎,不動手實操。即使博客的教程继榆,視頻教程再好巾表,自己不動手實操,寫代碼略吨,這樣的學習方式集币,記憶根本不深刻,容易遺忘翠忠,到頭來鞠苟,可能什么都沒學會!而且有些教程,如果沒有跟著動手實操当娱,可能會蒙圈吃既。個人建議:要挑覺得適合自己的教程,也要動手實操跨细,寫代碼鹦倚。即使不是邊看教程編寫代碼!在看完了教程之后冀惭,一定要自己動手實操震叙!過程中,可能會遇到些問題散休,但是這樣才會學習到更多媒楼,記憶也更加牢固!
2.只學框架或者庫
這個情況戚丸,針對javascript(下稱:js)現(xiàn)在沒有以前嚴重了划址,在我大學和實習期間,那個時間還是jquery傲視群雄的時候限府。很多人會在聊天的時候會說:有了jquery夺颤,為什么還要學js?有了vue谣殊,為什么還要學js拂共?面對這樣的提問,我那時候沒有回答姻几,心里想:jquery或者vue就是用js實現(xiàn)的宜狐,不會js,學jquery或者vue第一學得吃力蛇捌,第二學jquery或者vue肯定不會很深入抚恒。而且,萬一有時候络拌,項目不允許用jquery或者vue俭驮,那就基本不會寫代碼了。這時候春贸,如果學習其它的框架或者庫混萝,基本又等于重新學一門語言了。個人建議:先把基礎(chǔ)(html+css+js)打牢萍恕,再學其他框架或者庫逸嘀。雖然在會js的情況下,我不敢說學js的框架或者庫就是查文檔允粤,查API崭倘。但至少學js框架或者庫可以不會那么吃力翼岁!
3.只顧著寫代碼
這個就是我之前的一個習慣,只顧著寫代碼司光,不知道:耦合琅坡,實例化,繼承等專業(yè)術(shù)語残家,和別人交流榆俺,無限蒙圈!根本不知道別人在說什么坞淮!互聯(lián)網(wǎng)的技術(shù)更新的速度非常的快谴仙,隔三差五就發(fā)布一個框架,一個庫碾盐,一個工具。雖然不是每一個更新的技術(shù)都需要學習揩局。但是如果只顧著寫代碼毫玖,不了解新的技術(shù)。這樣很容易使自己停止不前凌盯,失去競爭力付枫。個人建議:在寫代碼之余,要確保自己是不是了解代碼驰怎,對代碼有沒有一個認識阐滩。以及多點留意消息,看下有沒有什么技術(shù)更新县忌!如果覺得更新的技術(shù)很實用掂榔,或者自己有興趣,可以多了解下症杏!畢竟互聯(lián)網(wǎng)是一個做到老装获,學到老的一個領(lǐng)域,技術(shù)更新的很快厉颤,如果跟不上流行的趨勢穴豫,說不定自己會被淘汰呢!
4.太早接觸復(fù)雜項目
這個情況逼友,比較普遍精肃,無論是在學校或者是現(xiàn)在的培訓(xùn)機構(gòu)帜乞。很多學習前端的人司抱,基礎(chǔ)沒打牢,就在那里揚言要做一個大項目挖函,我聽到的有的人想做知乎状植,有的人想做世紀佳緣等等一些偉大的目標浊竟!但是全部人都是連網(wǎng)站的業(yè)務(wù)流程和邏輯都沒弄清,最后越搞越亂津畸,就放棄了振定!之前的偉大目標都成了爛尾樓,作用最多就是一個代碼練習的作用肉拓!花了大量的時間后频,做了一件沒很大的實際意義的事情!個人建議:從簡單到復(fù)雜暖途,復(fù)雜的網(wǎng)站卑惜,都是有很多簡單的模塊。不妨先從簡單的功能做起驻售,做完了一個功能再往里面加功能露久!現(xiàn)在所處的公司就是這樣,開發(fā)的后臺管理系統(tǒng)欺栗,開發(fā)幾個月了毫痕,從一個只有員工的登錄注冊的功能,然后再逐一加功能迟几,到現(xiàn)在項目逐漸完善O搿(web前端學習交流群:328058344 禁止閑聊,非喜勿進@嗳)
5.好高騖遠臊泰,急于求成
這個情況就是多見于培訓(xùn)機構(gòu)出來的人。我不知道是不是所有城市都是這樣蚜枢,但是廣州這邊缸逃,給我的感覺就是這樣。就是目標不切實際厂抽,對自己也不夠認識察滑!之前在群聊的時候,在金三銀四那段時間修肠,很多人找工作贺辰,聊天的時候也遇到過很多培訓(xùn)機構(gòu)的人。簡歷上是各種精通嵌施,剛畢業(yè)在培訓(xùn)機構(gòu)培訓(xùn)幾個月饲化,要么就是自帶兩三年工作經(jīng)驗,要么就是說自己培訓(xùn)了幾個月吗伤,技術(shù)水平和市面上兩三年的人差不多吃靠。總之就是把自己吹得無所不能足淆!但是一出題巢块,就十問九不知礁阁。問閉包是什么,不知道族奢;問原型是什么姥闭,不知道。問繼承是什么越走,還是不知道棚品。這里就得說下,我印象深刻的一道題了廊敌。這道題我就是用來對付那些人的铜跑!看到哪個人各種精通,各種吹骡澈。我立馬出這道題锅纺,結(jié)果沒一個能回答正確急膀,題目在下面渊涝!
alert(a)
a();
var a=3;
function a(){
alert(10)
}
alert(a)
a=6;
a();
上面所說的,只是一個表面的現(xiàn)象涡拘,更重要的就是疼电,好高騖遠這個情況,很有可能會導(dǎo)致自己難以找到工作减拭!因為一些企業(yè)認為最高只能給你4000工資蔽豺,但是你自己卻認為自己有實力拿到9000以上的工資。這樣情況拧粪,很難找到工作修陡!給人的印象也不好!更重要的是可霎,這可能會影響自己的職業(yè)選擇魄鸦!個人建議:從實際出發(fā),評估自己癣朗。想下自己會什么拾因,能給企業(yè)帶來什么!也可以停下別人的建議旷余,和對比下別人的技術(shù)水平和工資绢记,或者是上網(wǎng)找一些面試題,看下自己能不能完成那些面試題正卧!最后評估下自己蠢熄,認為自己處于什么位置!
6.看到難點就逃避
這一點炉旷,相信很多人都有感觸签孔,就在開發(fā)上叉讥,遇到上一個或者幾個自己覺得沒辦法實現(xiàn)的需求或功能。千方百計地想著逃避饥追,比如:這個功能不是很重要图仓,不做可以嗎?這個功能我從來沒弄過判耕,搞不定的透绩。這個功能外包給別人做吧,我們做不了壁熄!很多一些逃避話語帚豪。大家可以想下,如果每次都是逃避草丧,那么時間一久狸臣,自己技術(shù)水平是不是還停留在基礎(chǔ)那個階段?以后要怎么提升自己的技術(shù)水平昌执。個人建議:迎難而上烛亦。在web前端開發(fā)這塊,如果遇上了難題是正常的懂拾,如果沒遇到難題就是見了鬼煤禽!面對難題,我們應(yīng)該是挑戰(zhàn)難題岖赋,而不是逃避檬果!大家都想提升自己的技術(shù)水平,挑戰(zhàn)難題不就是一個很好的提升技術(shù)水平的實戰(zhàn)機會嗎唐断?如果完成了之前認為不可能完成的難題选脊,這樣就是一個技術(shù)水平提升的見證!不是嗎脸甘?我也覺得恳啥,每天就寫簡單的業(yè)務(wù)代碼,不探索新知識丹诀,不挑戰(zhàn)難題钝的,這樣做開發(fā)也沒多少意思!
7.能用就行铆遭,不想優(yōu)化
這個也是一個很常見的情況扁藕,很多人認為寫的代碼能用就行,能實現(xiàn)需求就行疚脐!根本不管日后的優(yōu)化亿柑。在開發(fā)項目或者開發(fā)插件上,雖然我也是提倡:先實現(xiàn)棍弄,再優(yōu)化這個方式望薄!但是并不代表我開發(fā)完了就完了疟游,不會再想優(yōu)化!如果不試著去優(yōu)化自己的代碼痕支,不探索寫代碼的更好方式颁虐,以后別說編寫高質(zhì)量,簡潔的代碼了卧须,因為自己把學習編寫高質(zhì)量另绩,簡潔的代碼的一個重要途徑給封鎖了。還有一個就是花嘶,項目上笋籽,有些問題可能是潛在的,就是現(xiàn)在看著項目沒出現(xiàn)什么問題椭员,但并不代表以后不會出現(xiàn)問題车海。反而在項目開發(fā)完了之后,試著去優(yōu)化自己的代碼隘击,探索更好的實現(xiàn)方式侍芝,試著編寫出高質(zhì)量,簡潔的代碼埋同。這樣難道不是一個很好的學習過程嗎州叠?至于優(yōu)化代碼的方式,很多很多(比如常說的:代碼過于重復(fù)凶赁,是否引入設(shè)計模式咧栗?網(wǎng)站性能一般,可否進行優(yōu)化哟冬?),優(yōu)化這一塊忆绰,也不是說一步就優(yōu)化到最好的浩峡,而是至少不會比以前差!關(guān)于優(yōu)化错敢,我之前也發(fā)過一些資源翰灾。很容易找到,網(wǎng)上的資源更是很多稚茅!大家挑著看便是纸淮!
8.不懂不問和不懂立刻問
不懂不問,這個大家都知道亚享,就是遇到問題咽块,從不問同事或者通過其他方式咨詢別人。就是自己在那里苦思冥想欺税,嘗試各種解決方案侈沪。這樣的方式揭璃,最壞的結(jié)果就是最終還是解決不了問題,讓同事來詢問開發(fā)情況亭罪。最好的結(jié)果問題解決了瘦馍,但是解決問題所花的時間會肯定很多。不懂立刻問应役,這個就是詞面的意思情组。遇到問題馬上問別人。自己沒怎么思考或者根本不思考箩祥。這樣能解決問題院崇,但是這樣會導(dǎo)致自己可能會頻繁的問同事,會搞得同事很不耐煩滥比。如果把同事的耐心磨沒了亚脆,可能回答的語氣可能不會很好。這樣不僅影響同事之間的關(guān)系盲泛,還會讓自己之后不敢再請教同事濒持,有讓自己處于上面所說的不懂不問的風險。個人建議:適時請教寺滚。遇到不懂的問題柑营,先自己結(jié)合上下文思考下,想下以前有沒有遇到這個問題村视,解決不了去網(wǎng)上找解決方案官套,如果還沒有解決問題,這個時候再問別人蚁孔,問同事或者通過其它渠道問別人奶赔。這樣自己有了思考,解決問題的時候記憶也很深刻杠氢,也不會頻繁的打擾同事站刑!
9.不懂裝懂
這個次面上跟上面的差不多,但實際上不一樣鼻百!不懂裝懂就是去問別人的時候绞旅,實際上別人的講解并沒有完全聽懂,可能是礙于面子或者是因為不好意思打擾別人那么久温艇,或者擔心打擾別人太久因悲,所以裝作很懂。但是這樣可能忽悠得了一時勺爱,很快又會露出馬腳晃琳。這樣會搞得隔一會又要去問別人同樣的問題,這樣反而會搞得別人更加尷尬,更加為難蝎土!自己也會打擾別人更多的時間视哑!個人建議:如果有問題去問別人,只要你問的人不是一個非常沒有耐心的人誊涯。他都會耐心的解答你的問題挡毅!所以,當問別人問題的時候暴构,一定要確保自己是已經(jīng)弄懂了問題的緣由跪呈,同事一遍沒解釋清楚,自己直接回答不明白取逾,相信很多人都會再詳細的解釋一遍耗绿。如果擔心同事工作忙或者其它原因,可以挑一個合適的時間砾隅!我現(xiàn)在問同事就是误阻,要么不問,要問就切底弄懂晴埂!當然了究反,我的同事都很有耐心,每次我有什么問題儒洛,他們都會耐心解答精耐,甚至是擴展開來講!
10.沒理清楚需求就寫代碼
很多人在接到需求之后琅锻,第一反應(yīng)就是寫代碼卦停,即使是在自己沒把需求理清楚之前也是照樣寫代碼。另一種情況就是恼蓬,很多人是邊寫代碼惊完,邊想需求。這個開發(fā)方式处硬,萬一自己對需求理解有誤小槐!可能會導(dǎo)致自己寫的代碼,很大一部分都要修改郁油,甚至是全部刪除重寫本股。沒理清楚需求就寫代碼這個情況攀痊,發(fā)生的概率應(yīng)該挺大的桐腌,但是一般來說很難發(fā)現(xiàn)這個情況,畢竟程序員對代碼的增刪改查是再正常不過了苟径!我本身也不知道案站,就是在一次的技術(shù)分享中,老大提出來的棘街,他的建議就是對于一些稍微復(fù)雜一點的需求蟆盐,先理清楚需求承边,簡單畫個流程圖,然后在代碼里面石挂,先寫上一點注釋博助,再開始動手寫代碼!對于這一點痹愚,我現(xiàn)在就是在執(zhí)行當中富岳!除非需求真的很簡單,否則我都會在草稿本上簡單畫一下流程圖拯腮。根據(jù)流程圖窖式,寫好注釋,再寫代碼动壤,這樣會比較有條理萝喘,代碼也清晰,日后的返工也可能會有琼懊,但是不會像以前那么多阁簸!在開發(fā)時間上,效率上肩碟,都得到了一個提升强窖!
3.小結(jié)
web前端現(xiàn)在的行情,我不知道其它城市削祈,但是廣州確實是不太好翅溺,競爭也很大,差不多是100人爭一個職位髓抑,其中的原因就是培訓(xùn)機構(gòu)林立以及前端入門簡單咙崎。面對這樣的情況,我們能做的吨拍,只有時刻學習褪猛,提升自己的技術(shù)水平。這樣才能保證自己有很大的競爭力羹饰,能夠從這么多人中脫穎而出伊滋。對于學習和提升自己,除了應(yīng)該有適合自己的學習方式队秩,也該對一些妨礙進步的學習方式引以為鑒笑旺!上面10點是我自己的一些想法。希望對大家有用馍资!最后一個就是筒主,如果打擊有什么好的學習方式或者不好的學習方式,歡迎指點。讓大家交流意見乌妙,相互學習使兔!