張?chǎng)涡駥?duì)前端相關(guān)的看法
0.前言
今天讀到一篇文章,覺得非常的好彰居,所以溝通后進(jìn)行轉(zhuǎn)載诚纸,希望能給大家一些幫助。
文章原文:我對(duì)知乎前端相關(guān)問題的十問十答
大家可以選擇性查閱陈惰。
以下為作者文章畦徘。
1.序言
之前知乎上有不少同行邀請(qǐng)我回答一些前端相關(guān)問題,但是抬闯,大家都知道了井辆,要認(rèn)真回答一個(gè)問題是需要大量時(shí)間和精力的,對(duì)于還在不斷學(xué)習(xí)積累階段的我溶握,時(shí)不時(shí)分散原本的精力杯缺,打亂自己原本的節(jié)奏,實(shí)際上是一件不劃算的事情睡榆。就好像郵件或者微信萍肆,來一條信息,你就去看一下胀屿,時(shí)間和精力都會(huì)大大分散塘揣,工作和學(xué)習(xí)效率必然會(huì)大打折扣。所以我的策略是一段時(shí)間后專門花時(shí)間統(tǒng)一處理碉纳,這樣時(shí)間利用率會(huì)更高勿负,投入產(chǎn)出比會(huì)更大。
對(duì)于知乎上的這些前端的問題劳曹,我也打算采用同樣的套路奴愉,趁著端午節(jié)前還有兩個(gè)晚上的自由時(shí)間(當(dāng)晚修正:兩個(gè)晚上絕對(duì)搞不定,怕要月底前才能全部寫好)铁孵,決定抽十個(gè)比較具有代表性锭硼,自己能夠駕馭的前端問題統(tǒng)一作答。
2.前端現(xiàn)在怎么這么多人蜕劝?
原問題地址是:https://www.zhihu.com/question/55886635
問題描述如下:
投出去的簡(jiǎn)歷沒有人看了
我的回答:
想來想去檀头,還是從一個(gè)非前端領(lǐng)域的切身故事說起吧。
我的老家江蘇泰興是中國銀杏之鄉(xiāng)岖沛,產(chǎn)量全國1/3暑始,而我外公家宣堡鎮(zhèn)除了小餛飩出門,還是就是中國銀杏第一鄉(xiāng)的美稱婴削。在我小的時(shí)候廊镜,銀杏的藥用價(jià)值和使用價(jià)值被發(fā)掘,銀杏價(jià)格突然猛增唉俗,那個(gè)時(shí)候的銀杏樹是沒有人專門種植的嗤朴,全部都是很早很早以前的那些老樹,百年以上的比比皆是虫溜,或者說全部都是又大又粗的銀杏樹(見下圖)雹姊,那個(gè)時(shí)候銀杏30~50元每斤,20年前的30元相當(dāng)于現(xiàn)在300元衡楞,而一顆百年銀杏大樹一年可以產(chǎn)上千斤的銀杏吱雏,按照現(xiàn)在的購買力,相當(dāng)于一棵樹可以給一個(gè)家庭帶來年收入30萬瘾境,所以那個(gè)年代相親坎背,聽說市區(qū)有套房,恩寄雀,還行得滤!聽說家里有個(gè)百年銀杏樹,靠盒犹,直接就成了懂更!當(dāng)時(shí)一粒指頭大的白果就可以賣幾毛錢,可以換一斤西瓜急膀。以至于銀杏成熟的時(shí)候沮协,銀杏樹擁有者(我家田里的就是我的)會(huì)在外面通宵守著。
一看這玩意兒值錢卓嫂,政府又鼓勵(lì)慷暂,于是家家戶戶,真的是家家戶戶晨雳,包括我外公行瑞,屋子前面和屋后面地全部嫁接了的銀杏樹奸腺,好多好多顆,但是樹這東西啊血久,它不是一嫁接就能成熟的突照,沒個(gè)3,5年氧吐,花都看不到一個(gè)讹蘑。然后前幾年國慶回去看望,銀杏成熟季節(jié)筑舅,結(jié)果發(fā)現(xiàn)家家戶戶銀杏樹上都掛著黃燦燦成熟的銀杏果座慰,很是奇怪,怎么還不收按浼稹版仔?
后來跟外公聊天才知道,現(xiàn)在銀杏才一塊多錢一斤心剥,扣除打果子邦尊,蛻皮等一系列人力成本,完全就是虧本的買賣优烧,所以大家全部都讓果子掛在樹上蝉揍,自然掉落,然后爛在地里畦娄,甚至很多人又沾,直接把好不容易長大的銀杏樹直接砍了,又種起了紅薯花生熙卡。
我覺得前端人為什么現(xiàn)在這么多杖刷,和銀杏樹一下子這么多是類似的。
本質(zhì)上市場(chǎng)需求導(dǎo)致的驳癌。
一個(gè)是移動(dòng)web的興起(本質(zhì)上是多端的出現(xiàn))滑燃,二是Node.js發(fā)展帶來的諸如大前端的發(fā)展,三是我國的互聯(lián)網(wǎng)還在快速發(fā)展階段颓鲜,包括很多傳統(tǒng)行業(yè)的轉(zhuǎn)型等表窘。
就好像智能手機(jī)興起的那會(huì)兒,iOS開發(fā)以及Android開發(fā)需求很旺盛甜滨,而導(dǎo)致后來相關(guān)開發(fā)人員過盛是一樣的乐严。
歷史總是驚人的相似,但卻又無法避免衣摩。
畢竟互聯(lián)網(wǎng)行業(yè)的工資昂验,確實(shí)比其他行業(yè)要高很多,一旦市場(chǎng)出現(xiàn)某個(gè)巨大的職位缺口,自然會(huì)有很多人涌向這一塊蛋糕既琴,來的早還好占婉,還能吃到一口蛋糕。就像股市一樣的呛梆,有些人敏銳锐涯,牛市起來的時(shí)候跟進(jìn)磕诊,但大多數(shù)人都是在大家都已經(jīng)知道事物很火的時(shí)候跟進(jìn)的填物,承受的往往是低收益和高風(fēng)險(xiǎn)。
所以霎终,當(dāng)知乎上開始出現(xiàn)“前端現(xiàn)在怎么這么多人”這樣的問題的時(shí)候滞磺,已經(jīng)預(yù)示著市場(chǎng)開始飽和,那些趁著春風(fēng)莱褒,聽著前端很火击困,看著工資很高才進(jìn)入這個(gè)行業(yè)的小伙伴就和牛市到頭進(jìn)入股市,別人銀杏賺錢也跟著種銀杏樹的人一樣广凸,必然要面對(duì)貶值和風(fēng)險(xiǎn)兩大問題阅茶。
在市場(chǎng)面前,我們其實(shí)都是商品谅海。
當(dāng)市場(chǎng)趨于穩(wěn)定脸哀,最終能夠擺在貨架上的,還是那些真材實(shí)料的商品扭吁。所謂大浪淘沙撞蜂,去粗取精,時(shí)間會(huì)證明一切侥袜,其實(shí)也是同樣的意思蝌诡。
所以,提這個(gè)問題的小伙伴枫吧,你應(yīng)該意識(shí)到問題不在于前端有這么多人浦旱,而應(yīng)該意識(shí)到自己在前端這一塊的造詣還不行,意圖趁著春風(fēng)進(jìn)入某個(gè)行業(yè)九杂,并且有大成颁湖,這種概率非常小,因?yàn)槁殬I(yè)生涯它是一個(gè)長期的過程尼酿,就算你趁著行業(yè)需求緊缺進(jìn)入這個(gè)行業(yè)爷狈,你自身能力不過關(guān),永遠(yuǎn)都會(huì)停留在這個(gè)位置裳擎,會(huì)逐漸淪為邊緣角色涎永,生活不一定開心的。
你想啊,如果你比大部分人都優(yōu)秀羡微,能力比大部分人都強(qiáng)谷饿,再多人進(jìn)入這個(gè)行業(yè)也不需要擔(dān)心,所以其實(shí)最重要的是妈倔,安下心來好好的把自己的前端知識(shí)給打牢了博投,基礎(chǔ)學(xué)扎實(shí)了學(xué)系統(tǒng)了,千萬不要有什么一夜暴富的想法盯蝴,群體一定會(huì)發(fā)生小概率事件毅哗,但是是不會(huì)發(fā)生在你這個(gè)個(gè)體上的。
我當(dāng)年大學(xué)畢業(yè)的時(shí)候捧挺,前端這一塊的積累其實(shí)已經(jīng)比很多人都多了虑绵,但我還是辭去工作,無業(yè)閉關(guān)學(xué)習(xí)了9個(gè)月的基礎(chǔ)知識(shí)闽烙,你看我現(xiàn)在已經(jīng)30出頭了翅睛,雖然還是在一線,但是根本就不會(huì)擔(dān)心小鮮肉頂替了自己的位置黑竞,因?yàn)閮?nèi)功足夠扎實(shí)捕发,這些東西呢,才是真正經(jīng)得起時(shí)間考驗(yàn)的很魂。
所以扎酷,如果當(dāng)你們靜下心來更關(guān)注自身成長的時(shí)候,說不定哪天一抬頭莫换,嘿霞玄,物聯(lián)網(wǎng)興起了,需要大量前端職位拉岁;人工智能興起了坷剧,又來了前端職位;JS已經(jīng)深入到生物基因工程領(lǐng)域了喊暖,又是高薪職位惫企。
此時(shí)的你,站在了牛市的起點(diǎn)陵叽,自己就是一顆巨大健壯的銀杏樹狞尔,而銀杏的價(jià)格又很高很高……
而銀杏的故事其實(shí)還沒完,很多農(nóng)戶把自己的銀杏樹砍掉重新種了普通莊稼巩掺,所以這幾年銀杏價(jià)格就開始節(jié)節(jié)攀升……所以簡(jiǎn)歷無人問津偏序,不要擔(dān)心,你再堅(jiān)持個(gè)一兩年胖替,一定會(huì)有新的機(jī)會(huì)的研儒!
3.Web前端的路該怎么走豫缨?
原問題地址是:https://www.zhihu.com/question/34388831
問題描述如下:
剛剛畢業(yè),在公司一直做的是前端開發(fā)端朵,之前都是自己去學(xué)習(xí)一些基礎(chǔ)的前端知識(shí)(html+css+js)好芭。到現(xiàn)在越來越迷茫,不知道自己該去學(xué)哪方面的冲呢。 在學(xué)校學(xué)的都是一些基礎(chǔ)知識(shí)舍败,畢業(yè)之后自己自學(xué)了JavaScript,在這個(gè)公司敬拓,要求不高能搭頁面就行邻薯,可是我想提升自己。.求各位前輩指點(diǎn)恩尾!
我的回答:想要提升的想法是對(duì)的弛说。企業(yè)對(duì)員工的要求就是搭頁面挽懦,只會(huì)是下面兩種情況:1. 頁面質(zhì)量各方面都是top級(jí)別翰意,交給你實(shí)現(xiàn)可以收益最大化;2. 你技術(shù)能力僅限搭個(gè)頁面信柿,其他活交給你不放心冀偶。由于你剛畢業(yè),我想你應(yīng)該是第二種渔嚷,所以进鸠,如果你滿足于現(xiàn)狀,必然對(duì)自己職業(yè)發(fā)展是非常不利的形病,任何可以被輕易替換的職位都是不具有競(jìng)爭(zhēng)力的客年,搭頁面就是IT行業(yè)門檻最低的職位,沒有之一漠吻,雖然實(shí)際上要想搭的好需要很多積累量瓜,但是,對(duì)于大多數(shù)企業(yè)途乃,大部分用戶绍傲,大部分場(chǎng)景,只需要頁面視覺過得去就可以耍共,而這種程度的要求實(shí)在太好實(shí)現(xiàn)了烫饼,而太多入行的新人都是這種程度,導(dǎo)致“問題一”的出現(xiàn)试读。
從理論上講杠纵,只要你HTML和CSS足夠精通,頁面足夠好钩骇,也是可以進(jìn)入很好的單位比藻,有不錯(cuò)的發(fā)展骇塘。但是,很難韩容,對(duì)于大多數(shù)同學(xué)而言款违,往往是條不歸路,所謂一葉蔽目群凶,不見泰山插爹,簡(jiǎn)單和舒適容易讓人忽略的對(duì)邊界和底層的不斷探索,以及即使是大公司请梢,也不希望你化太多精力在收益不直接不明顯的事情上赠尾,所謂人在江湖,身不由己毅弧,因此很難堅(jiān)持下來气嫁。
所以,我的建議是優(yōu)先投入精力在JS的學(xué)習(xí)上够坐,學(xué)習(xí)一定要系統(tǒng)寸宵,一定要是基礎(chǔ)知識(shí)。
學(xué)習(xí)有經(jīng)驗(yàn)式學(xué)習(xí)和系統(tǒng)學(xué)習(xí)兩種元咙。經(jīng)驗(yàn)式可以收獲書本上沒有的一些知識(shí)梯影,例如微信瀏覽器下的坑,以及知識(shí)具有極高概率的重復(fù)利用可能性庶香,可以說是投入產(chǎn)出比非常高的一種學(xué)習(xí)方式甲棍;但是不足也很明顯,一是學(xué)到的知識(shí)比較狹隘赶掖,拿搭頁面舉例感猛,常用的CSS顛來倒去就那些,以至于很多小伙伴都沒見過unicode-bili
等CSS屬性奢赂;第二個(gè)是工作效率其實(shí)并不高陪白,一旦遇到之前沒有接觸過的場(chǎng)景或者需求,就會(huì)不知從何下手呈驶,百之谷之問人之拷泽,大把時(shí)間都被耗掉了;第三個(gè)就是技術(shù)實(shí)現(xiàn)往往不是最優(yōu)解袖瞻,舉例來說司致,想要知道A元素是否包含B元素。以前工作經(jīng)歷讓我們知道parentElement
可以獲得父元素聋迎,于是脂矫,說不定就會(huì)寫一個(gè)不斷遍歷父元素判斷元素是否包含的方法。寫的人自以為寫了個(gè)很厲害的方法霉晕,殊不知庭再,瀏覽器捞奕,包括低版本IE都天然支持元素是否包含的DOM方法contains
。
而系統(tǒng)學(xué)習(xí)是成為一個(gè)技術(shù)能手所必須的拄轻,全部知識(shí)點(diǎn)在腦中(或者有印象)颅围,自然想要實(shí)現(xiàn)什么手到擒來。然而系統(tǒng)學(xué)習(xí)卻是很枯燥恨搓,很花時(shí)間凸椿,有些知識(shí)可能一輩子都用不到幾次晦譬,平均下來,似乎是個(gè)投入很大產(chǎn)出效率并不高的買賣侄榴。人總是喜歡舒適討厭無用功的付出羹饰,因此畅厢,有非常多的開發(fā)人員的知識(shí)都是經(jīng)驗(yàn)式學(xué)習(xí)饭寺,然后1年經(jīng)驗(yàn)3年用傅事,然后中年危機(jī)。
“基礎(chǔ)知識(shí)”是相對(duì)上層工具或者應(yīng)用而言的宪郊,例如掂恕,最近Vue很火,對(duì)于剛畢業(yè)的你废膘,且公司又不需要你寫Vue, 因此竹海,Vue哪怕被說到天上去,也不要去學(xué)習(xí)丐黄,抓緊時(shí)間學(xué)習(xí)JS基礎(chǔ)知識(shí),原生的那些東西孔飒。
雖然前面講過學(xué)習(xí)要系統(tǒng)灌闺,但是,JS知識(shí)點(diǎn)那么多坏瞄,如果每個(gè)知識(shí)點(diǎn)都花大把功夫去學(xué)習(xí)桂对,且不說能不能學(xué)懂,怕是壓根騰不出這么多業(yè)余時(shí)間吧鸠匀。因此蕉斜,很有必要指出哪些內(nèi)容是適合你當(dāng)下學(xué)習(xí)的,否則學(xué)習(xí)無重點(diǎn)像無頭蒼蠅缀棍,很容易陷入迷茫的宅此。
非計(jì)算機(jī)專業(yè)背景學(xué)習(xí)JS要點(diǎn):
非常重要:先要對(duì)JS這門語言要有整體、感性的認(rèn)識(shí)爬范;
掌握J(rèn)S中的字符串父腕、函數(shù)、對(duì)象青瀑、數(shù)組璧亮、字面量等基本概念萧诫,熟記所有內(nèi)置的方法(包括參數(shù)和返回值);
所有繼承和原型相關(guān)內(nèi)容跳過枝嘶,注意帘饶,是跳過,不要看群扶!沒有這些JS一樣可以活得很好尖奔,你的日常工作一樣玩得飛起,當(dāng)然穷当,你沒忍住看了相關(guān)知識(shí)也沒關(guān)系提茁,因?yàn)槟銜?huì)發(fā)現(xiàn)自己看不懂的;
DOM事件和所有DOM方法一定要掌握的牢不可破馁菜;
學(xué)好正則表達(dá)式茴扁;
然而,要記住JS所有字符串汪疮、函數(shù)峭火、數(shù)組相關(guān)的方法,所有DOM相關(guān)方法是相當(dāng)龐大的一項(xiàng)工作智嚷,因?yàn)槁敉瑁苋菀淄洠椒ㄒ埠芎?jiǎn)單盏道,所謂好記性不如爛筆頭稍浆。把編輯器的JS自帶補(bǔ)全提示干掉,從小交互開始猜嘱,嘗試使用原生的JS書寫衅枫,寫著寫著,一定就會(huì)記住了朗伶,這是最快學(xué)習(xí)成長的方法弦撩。
學(xué)習(xí)的過程一定是帶有痛苦的,并且漫長的论皆,千萬不要出現(xiàn)類似“《JavaScript高級(jí)程序設(shè)計(jì)》和《JavaScript語言精粹》我都看完了益楼,接下來我要學(xué)什么的言論”?你以為你是黃蓉啊点晴,看一眼就記住啦感凤!反復(fù)看,看完肯定會(huì)忘記觉鼻,忘記了再看俊扭,我也是看這兩本書學(xué)習(xí)JS的,《JavaScript高級(jí)程序設(shè)計(jì)》這本書已經(jīng)被我翻到掉頁了坠陈,《JavaScript語言精粹》上面滿滿的筆記萨惑,哪個(gè)知識(shí)點(diǎn)不記得了捐康,基本上一翻就可以準(zhǔn)確到對(duì)應(yīng)的頁數(shù),因?yàn)橐彩欠颂啾榱恕?/p>
最終學(xué)習(xí)是否成功的關(guān)鍵在于“堅(jiān)持”庸蔼。
在一個(gè)相對(duì)公平的環(huán)境下解总,想要超越他人,只要能夠完成他人完成不了的事情就可以了姐仅。大多數(shù)非計(jì)算機(jī)背景前端從業(yè)人員對(duì)于JS的系統(tǒng)學(xué)習(xí)是很難堅(jiān)持下來的花枫,時(shí)間長,收益緩慢掏膏,但是劳翰,如果你堅(jiān)持下來了,你就超越了這些人馒疹,你就不是一抓一大把的頁面仔佳簸,而真正能獨(dú)當(dāng)一面搶手的前端開發(fā)了,完成了前端開發(fā)領(lǐng)域的階級(jí)跨越颖变。如果你學(xué)習(xí)的時(shí)候像放棄生均,想想前面這句話,或許就又有了額外的動(dòng)力腥刹。
4.前端開發(fā)基礎(chǔ)扎實(shí)的標(biāo)準(zhǔn)是什么马胧?
原問題地址是:https://www.zhihu.com/question/38922374
問題描述如下:
1.題主妹子,現(xiàn)在在培訓(xùn)學(xué)習(xí)前端衔峰,看到有人說不要培訓(xùn)出來的程序員佩脊,因?yàn)榛A(chǔ)不扎實(shí),自學(xué)能力差等朽色,讓我不得不重視這個(gè)問題邻吞;2.題主上一份工作是做招聘的,也了解過葫男,有的企業(yè)是不要自學(xué)的,因?yàn)闆]有經(jīng)過系統(tǒng)學(xué)習(xí)崔列,基礎(chǔ)也不扎實(shí)梢褐,但是有人又說會(huì)喜歡自學(xué)的人多過培訓(xùn)的。3.感慨就是這個(gè)世界好復(fù)雜赵讯,每個(gè)人想要的都不一樣啊盈咳,那其實(shí)唯一的標(biāo)準(zhǔn)就是基礎(chǔ)好不好嘛?
那問題來了:對(duì)于前端边翼,或者其他的IT崗位而言鱼响,怎樣才算基礎(chǔ)扎實(shí)呢?
我的回答:這個(gè)問題我們其實(shí)可以通過咬文嚼字來理解组底,首先要明白什么是“基礎(chǔ)”丈积,然后理解什么是“扎實(shí)”筐骇。
“基礎(chǔ)”漢字表形上有“土”“石”“山”,原本用在建筑構(gòu)造上江滨,由于地球重力的存在铛纬,現(xiàn)代建筑都是從下往上建的,而最下面這個(gè)用來穩(wěn)固建筑的這個(gè)底層就是“基礎(chǔ)”唬滑。眾所周知告唆,建筑越高,基礎(chǔ)一定要越牢固晶密,否則就會(huì)出現(xiàn)“眼看他起朱樓擒悬,眼看他樓塌了”的情況。在這世界上有非常非常多的東西都是從無到有建立起來的稻艰,就跟一棟建筑的拔地而起是一樣的懂牧,先有個(gè)底子,然后再慢慢的往上添加?xùn)|西连锯,最終形成一個(gè)完整事物归苍,而這個(gè)“底子”,我們也稱之為“基礎(chǔ)”运怖,可以看成是事物發(fā)展的立命之本拼弃。
其中個(gè)人技能成長,就是非常典型的一個(gè)從無到有建立的過程摇展,比如說打籃球吻氧,籃球規(guī)則,運(yùn)球咏连,定點(diǎn)投籃等就屬于非扯⑺铮基本的東西,我們就可以稱之為“基礎(chǔ)”祟滴,就算籃球之神邁克爾喬丹也是踩著這些基礎(chǔ)成長起來的振惰;又比方說前端開發(fā),在接觸這玩意之前垄懂,大家顯然都是一無所知的骑晶,到后來祝那個(gè)玩出點(diǎn)花樣來,這個(gè)從無到有的過程也必然伴隨著一些稱之為“基礎(chǔ)”的東西在里面草慧,那到底是什么東西呢桶蛔?
回到這個(gè)問題本身,目前行業(yè)中前端開發(fā)其實(shí)分兩類漫谷,一類是偏邏輯系的仔雷,一支也是偏視覺系的,無論是哪個(gè)系的,基礎(chǔ)都離不開HTML碟婆,CSS和JavaScript的电抚,但不同系別最基礎(chǔ)東西有差異,如果是偏邏輯系的脑融,基礎(chǔ)中的基礎(chǔ)是JavaScript喻频,至于邏輯思維能力和抽象能力,并不是基礎(chǔ)肘迎,而是天賦甥温,基礎(chǔ)是通過努力可以夯實(shí)的,如果無論怎么努力也夯實(shí)不了妓布,那就不能稱之為基礎(chǔ)姻蚓;如果是視覺系的,基礎(chǔ)中的基礎(chǔ)就是HTML匣沼,沒錯(cuò)狰挡,是HTML,不是CSS释涛,雖然CSS出鏡頻率甩了HTML好幾條街加叁,但是,最基礎(chǔ)的是HTML唇撬,自帶行為和樣式它匕,前端中的前端。同樣的審美能力和具象能力也不是基礎(chǔ)窖认,這東西天生的豫柬,很難練出來。
提問的妹子上一份工作是做招聘的扑浸,根據(jù)我其實(shí)不太靠譜的經(jīng)驗(yàn)式猜測(cè)烧给,妹子應(yīng)該是走視覺系的,那前端基礎(chǔ)排序應(yīng)該是HTML > CSS > JavaScript喝噪。大家千萬不要有這樣一個(gè)誤區(qū)础嫡,認(rèn)為基礎(chǔ)的重要程度是和學(xué)習(xí)時(shí)間成正比的,其實(shí)不是這樣子的酝惧。很多人學(xué)HTML估計(jì)就幾周時(shí)間驰吓,覺得學(xué)得很不錯(cuò)了,簡(jiǎn)歷上可以寫“精通”二字系奉,因?yàn)樽罱K的效果好像確實(shí)和預(yù)期的一樣,我說這個(gè)并不是想吐槽這些人“槑”姑廉,而是想表達(dá)的是HTML這門語言相當(dāng)?shù)膮柡θ绷粒@絕對(duì)是一個(gè)會(huì)非常長盛的語言,因?yàn)槠渲匾瑫r(shí)上手非常的簡(jiǎn)單,并且隨著發(fā)展萌踱,說不定以后會(huì)一統(tǒng)萬端葵礼。
這個(gè)問題的重點(diǎn)其實(shí)是“扎實(shí)”。先說說“實(shí)”吧并鸵,拿大米舉例鸳粉,我們盛了滿滿的一碗飯,用勺子再壓一壓园担,我們會(huì)覺得米飯很“扎實(shí)”届谈,很管飽,但是我想從來不會(huì)有人覺得一碗粥很“扎實(shí)”吧弯汰,為什么呢艰山?粥里面雖然也有米飯,但其實(shí)百分之八九十都是水咏闪,水大家都知道的曙搬,進(jìn)到肚子里一會(huì)兒一泡尿一撒就沒了……
基礎(chǔ)知識(shí)的學(xué)習(xí)其實(shí)也是類似的,所以“實(shí)”鸽嫂,就是要滿纵装,就是要沒有間隙,就是沒有水分在里面据某。假設(shè)請(qǐng)問那些基礎(chǔ)知識(shí)橡娄,無論HTML,CSS還是JavaScript哗脖,我們都看成是一碗米瀑踢,那我們花兩周速成那些知識(shí),或者說平時(shí)項(xiàng)目開發(fā)所用的那些知識(shí)所代表的米粒頂多就一碗粥里面米飯的量才避,雖然吃的時(shí)候管飽橱夭,你以為好像知道了全世界,但實(shí)際上你知道的永遠(yuǎn)是碗里面那一小撮米而已桑逝,這就是不夠“實(shí)”棘劣。
因此,所謂“實(shí)”楞遏,就是從中心到邊界全部一個(gè)不落的進(jìn)行細(xì)致的了解茬暇,比如說舉個(gè)很簡(jiǎn)單的例子,是我問過我廠實(shí)習(xí)生的問題:“CSS vertical-align
支持幾個(gè)關(guān)鍵的屬性值寡喝?CSS vertical-align
支不支持負(fù)值糙俗?CSS vertical-align
百分比值是相對(duì)哪個(gè)屬性計(jì)算的?”
CSS vertical-align
屬性大家肯定都用過预鬓,一定是middle
用的最多巧骚,有時(shí)候也會(huì)用用top
或者bottom
,然后有太多的人就會(huì)認(rèn)為vertical-align:top/middle/bottom
就是vertical-align
屬性的全世界,這就是典型的CSS前端知識(shí)不扎實(shí)劈彪,想要扎實(shí)非常簡(jiǎn)單竣蹦,MDN文檔看起來。HTML中有非常多的標(biāo)簽和屬性沧奴,有新標(biāo)簽字的行為痘括,有些屬性自帶行為,還有些屬性自帶樣式滔吠,且影響無障礙訪問纲菌,想要“實(shí)”,文檔一個(gè)一個(gè)看過來屠凶,一定要一個(gè)不落驰后,要記住矗愧;CSS那么多屬性灶芝,默認(rèn)值是什么,支持的屬性值是什么唉韭,定義是什么夜涕,都是非常簡(jiǎn)單的不需要邏輯思維的東西,全部一個(gè)不拉記住属愤。于是你會(huì)發(fā)現(xiàn)這些其實(shí)非常表面的一些東西女器,你花兩周時(shí)間是根本來不及看的,我想很多人兩年都看不完住诸,或者說根本就看不下來驾胆,靜不下心來,眼睛速度一掃贱呐,恩丧诺,我知道了,這些東西奄薇,好簡(jiǎn)單驳阎,其實(shí)屁什么都看不出來,就好像自己寫的文章中的錯(cuò)別字馁蒂,有時(shí)候復(fù)查個(gè)十幾遍都看不出來呵晚。要想從簡(jiǎn)單的自以為了解的東西中看出一些不一樣的東西出來,這個(gè)其實(shí)是需要天賦的沫屡,心態(tài)饵隙,專注度等都有關(guān)系。
所以沮脖,雖然我這里對(duì)這個(gè)問題進(jìn)行了用心的回答癞季,但是最終能帶來多少好的結(jié)果我其實(shí)是保持極大的懷疑的劫瞳。
最后,回答一下“扎”绷柒,“實(shí)”為“滿”,可以理解為廣度涮因,“扎”則可以理解為深度废睦,我們可以看兩張圖片,形象的感受一下這個(gè)“扎”這個(gè)動(dòng)作:
也就是說基礎(chǔ)扎實(shí)的另外一層意思就是要“進(jìn)入水下”养泡,“深入肌膚”嗜湃,也就是說,我們除了要熟記表面的那些定義啊澜掩,語法啊购披,參數(shù)啊,還需要多思考肩榕,為什么這樣設(shè)計(jì)刚陡?為什么會(huì)有這樣的表現(xiàn)?
舉個(gè)簡(jiǎn)單例子株汉,我們或多或少都聽說話筐乳,寫頁面要符合W3C標(biāo)準(zhǔn),HTML一定要要語義化乔妈,但不知道大家有沒有想過為什么要注意語義化蝙云?這其中背后的原因就是“扎”。
如果我們把前端基礎(chǔ)知識(shí)點(diǎn)比多人的話路召,所以前端基礎(chǔ)扎實(shí)勃刨,包括:在座所有的人我都知道你們的名字是什么,你們的父母叫什么股淡,在什么地方上班身隐,星座是什么,特長是什么揣非;甚至我還知道你為什么你會(huì)叫這個(gè)名字抡医,你為什么會(huì)有這樣的性格。
發(fā)現(xiàn)沒早敬,“前端基礎(chǔ)知識(shí)”這幾個(gè)字看上去好像很簡(jiǎn)單忌傻,但實(shí)際上真的要做好其實(shí)是非常難的。HTML搞监,CSS和JavaScript分屬三門不同的語言水孩,每門語言都有非常多的基礎(chǔ)知識(shí),要想全部記住并能自如在項(xiàng)目中選項(xiàng)應(yīng)用琐驴,那一定是需要大量的時(shí)間學(xué)習(xí)和積累的俘种。
但是如果你積累到一定程度秤标,猶如萬丈高樓一樣,有非常好的基礎(chǔ)宙刘,日后在前端領(lǐng)域苍姜,尤其技術(shù)這一塊,日后的高度一定非承可觀衙猪,而且持續(xù)上升。并且無形中會(huì)從一個(gè)前端使用者變成一個(gè)前端創(chuàng)造者布近,成為一個(gè)真正的高級(jí)前端開發(fā)人員垫释,成為行業(yè)的香餑餑。
5.前端新人的迷茫撑瞧?
原問題地址是:https://www.zhihu.com/question/54440732
問題描述如下:
大二棵譬,學(xué)前端大半年了,html预伺,css订咸,js,jq扭屁,less算谈,bootstrap這些不敢說精通,但也熟練掌握料滥,項(xiàng)目也做了不少然眼。最近學(xué)react的時(shí)候開始感覺力不從心了,之后再去了解webpack葵腹,npm高每,node等簡(jiǎn)直一臉懵逼,各種配置命令行根本看不懂践宴,仿佛到了另一個(gè)世界鲸匿。到了這個(gè)階段應(yīng)該怎么繼續(xù)學(xué)下去呢,是我基礎(chǔ)知識(shí)不足的問題嗎阻肩?
我的回答:現(xiàn)在的年輕人啊带欢,就是急躁。有句古話說的好烤惊,不識(shí)廬山真面目乔煞,只緣身在此山中。
如果單看問題表面柒室,進(jìn)行不下去渡贾,肯定是因?yàn)榛A(chǔ)知識(shí)不足,主要是計(jì)算機(jī)基礎(chǔ)理論知識(shí)雄右,這個(gè)時(shí)候就可以看出計(jì)算機(jī)專業(yè)背景的優(yōu)勢(shì)以及其實(shí)JS掌握得很弱啦空骚。
但我看的是纺讲,你可能在走一條錯(cuò)誤的方向,或者說有種給人盲目學(xué)習(xí)的感覺囤屹。
我覺得我大學(xué)最大的收獲是“自我認(rèn)知”熬甚。我當(dāng)時(shí)買了一本厚厚的心理學(xué)書,叫做《人格心理學(xué)》牺丙,讀得非常認(rèn)真则涯,一頁不落全部讀完,幾乎每一頁都有筆記和心得冲簿。這本書是我人生中的一個(gè)轉(zhuǎn)折點(diǎn),它讓我明白了亿昏,為什么我會(huì)如此特立獨(dú)行峦剔,為什么性格會(huì)很罕見地分布在兩個(gè)對(duì)立端,為什么內(nèi)在更像女孩子角钩,敏感細(xì)膩吝沫,喜歡和女孩子相處,喜歡聽女生的歌(取向還是正常的哈)递礼,這種性格特質(zhì)比例多少惨险,這種性格的優(yōu)勢(shì)在哪里,不足在哪里等等脊髓。
“自我認(rèn)知”帶來的好處是更自信辫愉,內(nèi)心更強(qiáng)大了,比方說一些說話刻薄的人說你是“變態(tài)”将硝,你就可以大可不必放在心上恭朗,因?yàn)槟阕约褐滥闶鞘裁匆粋€(gè)人;你知道自己的不足在哪里依疼,以后就可以知道從朝方面努力不斷改正讓自己變得更好痰腮;你知道你自己的特長在哪里,從哪方面發(fā)力更容易讓你走得更高更遠(yuǎn)律罢,學(xué)習(xí)的時(shí)候不會(huì)盲目膀值,即使是一條別人沒走過的路,也會(huì)堅(jiān)持走下去误辑。注意沧踏,最后這一點(diǎn)就是我想說的重點(diǎn),所謂“人貴自知”稀余,人的精力總是有限的悦冀,盲目地學(xué)習(xí),甚至直接去硬啃自己當(dāng)下啃不動(dòng)的骨頭睛琳,實(shí)際上是種無謂的消耗和浪費(fèi)盒蟆。在我看來踏烙,你學(xué)react除了讓自我感覺良好以外,沒有任何作用历等,如果你的目標(biāo)是進(jìn)入非常棒的前端團(tuán)隊(duì)的話讨惩。因?yàn)樾U校踔辽缯泻停A(chǔ)絕對(duì)是更重要的荐捻。所以,我覺得你有必要好好想一想寡夹,我的專業(yè)是什么处面,我的興趣是什么,我最強(qiáng)的特質(zhì)是什么菩掏,既然你說你react力不從心魂角,很顯然,react這種東西在當(dāng)下并不適合你智绸,如果進(jìn)一步本質(zhì)分析野揪,可能這輩子都不適合你。大學(xué)數(shù)年過得很快的瞧栗,要想校招時(shí)候offer拿到手軟斯稳,一定要進(jìn)行基礎(chǔ)攻堅(jiān),jq迹恐,less挣惰,bootstrap要學(xué)就不要學(xué)怎么使用,而是學(xué)人家的源碼系草,為什么這么實(shí)現(xiàn)通熄,如果看不懂,搞不明白找都,說明你html唇辨,css,js基礎(chǔ)還很弱能耻,離熟練掌握還差了好幾條街赏枚,需要不斷積累,再不斷積累晓猛,會(huì)做幾個(gè)項(xiàng)目鳥用都沒有饿幅,和你競(jìng)爭(zhēng)的那些前端哪個(gè)大學(xué)沒做過幾個(gè)項(xiàng)目,而校招名額就那幾個(gè)戒职。等什么時(shí)候栗恩,jq,bootstrap甚至react源碼都看得懂了洪燥,恭喜你磕秤,你已經(jīng)到了另一個(gè)世界乳乌,眼界和認(rèn)知都脫胎換骨,即使是一些你自己都沒注意的談吐表達(dá)市咆,都會(huì)很容易感受出不俗的技術(shù)造詣在里面汉操!
所以呢,那些讓你懵逼的東西就不要學(xué)了蒙兰,了解下大概即可磷瘤,好好扎實(shí)基礎(chǔ),參見問題三搜变,這才是你的方向采缚。
然后,對(duì)于在校學(xué)生挠他,從概率上講仰担,深入JavaScript要比深入CSS入職概率高,但也有團(tuán)隊(duì)招CSS很厲害绩社,JS毛毛雨的人,例如我們閱文集團(tuán)赂苗,但這樣的企業(yè)并不多愉耙。當(dāng)然,如果要我說心里話拌滋,我是鼓勵(lì)大家追尋自己的內(nèi)心世界朴沿,不要被外部這些東西左右,做好自己往毡,等待時(shí)機(jī)纲岭。但對(duì)于大部分人其實(shí)只想混口飯郎笆,給父母長長臉,功利些也無可厚非坚芜,面向職位面向熱門前端開發(fā)也沒什么不好的,喬布斯的名言“follow your heart”其實(shí)只適合有資本有能力的那些人斜姥。
6.① 前端工程師的價(jià)值體現(xiàn)在哪里鸿竖?② 前端的意義是什么?
前一個(gè)問題地址是:https://www.zhihu.com/question/19589966后一個(gè)問題地址是:https://www.zhihu.com/question/44812950問題描述如下:
上一門必修課的時(shí)候铸敏,老師介紹了許多她的科研成果缚忧,感覺好高端。最后杈笔,老師讓我們思考一下自己學(xué)計(jì)算機(jī)的意義是什么闪水?難道就是為了寫寫網(wǎng)頁?我個(gè)人深知將網(wǎng)頁寫好多么的不容易蒙具。但是感覺所解決的問題貌似是可有可無的球榆,即沒有前端朽肥,我們好像也能使用好多的互聯(lián)網(wǎng)功能。前端的意義是什么呢芜果??jī)H僅是可以優(yōu)化視覺效果鞠呈,讓用戶用得開心(我承認(rèn)這是很重要的一部分,想知道還有沒有其他的)
由于兩個(gè)問題答案本質(zhì)上類似右钾,因此蚁吝,我統(tǒng)一作答。
我的回答如果作為一個(gè)打工者角度來講舀射,前端的意義就是可以養(yǎng)家糊口窘茁。
而作為職業(yè)本身,前端的意義其實(shí)就如你說的脆烟,讓人機(jī)交互這一塊讓用戶更加愉悅山林。至于其他什么高大上的意義,其實(shí)并沒有邢羔。前端工程師的價(jià)值其實(shí)也就是讓用戶在于機(jī)器交互的時(shí)候更加愉悅驼抹,讓用戶越來越喜歡,甚至在上面花錢拜鹤,給企業(yè)創(chuàng)造價(jià)值框冀。
你說如果你想要通過前端代碼來改變世界,很難敏簿,除非你造個(gè)像jQuery這樣的東西明也,也就讓世界變化了那么一點(diǎn)點(diǎn)而已。
所以千萬不要高估前端這個(gè)職位的價(jià)值和意義惯裕。有種效應(yīng)叫做“稟賦效應(yīng)”温数,指的是“當(dāng)個(gè)人一旦擁有某項(xiàng)物品,那么他對(duì)該物品價(jià)值的評(píng)價(jià)要比未擁有之前大大增加”蜻势。我們身為前端工程師撑刺,對(duì)前端這個(gè)職位的評(píng)價(jià)自然就要比真實(shí)的要高那么幾分。
我剛開始工作的時(shí)候咙边,有非常強(qiáng)烈的猜煮,我是前端我自豪的感覺,追求完美的代碼败许,和開發(fā)PK JS要放底部還是上面王带,慫第三方推廣負(fù)責(zé)人產(chǎn)生的http請(qǐng)求太多等等。當(dāng)然現(xiàn)在看問題的角度已經(jīng)完全不一樣了市殷,比方我們看新浪微博愕撰,前端體驗(yàn)其實(shí)是做的很不好的,性能也很差,微博網(wǎng)頁掛著同時(shí)看騰訊視頻搞挣,視頻就會(huì)有卡頓带迟,把微博網(wǎng)頁關(guān)掉立馬就好了,但是你看人家的財(cái)報(bào)囱桨,看看人家的股價(jià)仓犬,你就會(huì)發(fā)現(xiàn)前端在整個(gè)產(chǎn)品中使用的價(jià)值其實(shí)并沒有我們想的那么高。
我突然想起了很早年的時(shí)候參加D2前端技術(shù)會(huì)議舍肠,因?yàn)橹Ц秾毜那拜叿窒砹艘粋€(gè)很有意思的案例搀继,就是很重要的支付頁面的加載時(shí)間,具體時(shí)間我記不得啦翠语,我大致說兩個(gè)數(shù)值示意下叽躯,就是1秒變成500毫秒,然后去看用戶的跳出率存留量之類的數(shù)據(jù)肌括,結(jié)果發(fā)現(xiàn)并沒有什么明顯的變化点骑。也就是說我們拼命優(yōu)化提高的那點(diǎn)加載時(shí)間,其實(shí)對(duì)用戶來講并沒有什么價(jià)值谍夭。
因此黑滴,從企業(yè)的角度講,前端僅僅是整個(gè)產(chǎn)品流程上比較重要的一環(huán)紧索,想要真正改變世界跷跪,需要上下游一起齊心齊力,當(dāng)然齐板,最重要的還是上層領(lǐng)導(dǎo)者的方向,決策一定要正確葛菇。
這里可以順便說點(diǎn)其他的東西甘磨,前端工程師的的薪資水平其實(shí)是與他給企業(yè)帶來的價(jià)值決定的,一個(gè)前端工作者眯停,就算他技術(shù)再牛济舆,如果他只是單打獨(dú)斗,給企業(yè)帶來價(jià)值其實(shí)是有限的莺债,哪怕做的產(chǎn)品在前端這一塊是世界一級(jí)棒滋觉,可能會(huì)遇到晉升阻礙;但是如果他可以讓其他前端同事一起變得更好齐邦,現(xiàn)在上游的設(shè)計(jì)師或者下游的開發(fā)也變得更好椎侠,產(chǎn)生了更多的價(jià)值,自然薪資也會(huì)上去措拇。因此我纪,通常前端管理人員會(huì)工資比較高(即使不參與一線開發(fā)),因?yàn)樗枰尯芏嗟那岸巳藛T一起變得井井有條,高效運(yùn)轉(zhuǎn)浅悉,這也是需要很多精力成本和承擔(dān)巨大壓力的趟据,還有一類就是前端架構(gòu)人員,負(fù)責(zé)優(yōu)質(zhì)的類庫术健,業(yè)務(wù)配套工具等基礎(chǔ)建設(shè)汹碱,保證整個(gè)產(chǎn)品線都高質(zhì)量,同時(shí)節(jié)約人力等成本荞估,也會(huì)有比較高的收入咳促。
作為職業(yè)人,在談?wù)撉岸斯こ處煹膬r(jià)值的時(shí)候泼舱,眼中不應(yīng)該只有技術(shù)等缀,或者心心念念,實(shí)際上根本就不了解的用戶娇昙,其實(shí)可以多想想給團(tuán)隊(duì)尺迂,給公司帶來了哪些價(jià)值,并且能夠佐證之冒掌。跳出職業(yè)本身思考問題噪裕,或許會(huì)有不一樣的感悟和成長。
對(duì)了股毫,你的代碼最終能否改變世界其實(shí)是你的老板決定的膳音,就算你寫的代碼一般般,但是你的老板很厲害铃诬,產(chǎn)品全球使用祭陷,你其實(shí)也已經(jīng)改變了世界了。最后你會(huì)發(fā)現(xiàn)趣席,改變世界似乎和你技術(shù)牛不牛一點(diǎn)關(guān)系都沒有兵志,還是那句話,站在老板的角度宣肚,前端的意義其實(shí)就那么回事想罕。
7.學(xué)web前端開發(fā),培訓(xùn)還是自學(xué)靠譜霉涨?
原問題地址是:https://www.zhihu.com/question/31059577
問題描述如下:
先說明問題:想轉(zhuǎn)行做web前端開發(fā)工作按价,但是無從下手。詢問別人有的說是培訓(xùn)比較靠譜笙瑟,也有說自學(xué)也沒什么問題楼镐。所以想在這請(qǐng)教一下師兄們,集思廣益往枷,但求少走彎路鸠蚪。**************************************************************情況:本姑娘普通二本院校14級(jí)畢業(yè)生今阳,電子信息工程專業(yè)學(xué)嵌入式開發(fā)。畢業(yè)后由于一些什么“鐵飯碗”茅信、“工作穩(wěn)定”盾舌、“國企有發(fā)展”之類的原因,家里在這邊給找了一份銀行的工作蘸鲸,現(xiàn)在工作一年妖谴。一年的工作終于發(fā)現(xiàn)這跟本不是我想要的生活,于是果斷辭職酌摇。在校期間學(xué)習(xí)過c語言膝舅。曾經(jīng)也對(duì)網(wǎng)頁設(shè)計(jì)比較感興趣,自學(xué)了一點(diǎn)窑多,不過那個(gè)時(shí)候?qū)W的都是Dreamweaver,Fireworks,Flash什么的仍稀,也沒去研究HTML,CSS埂息,JavaScript這些技潘。**************************************************************所以在這里還是想詢問一下,如果我想做這些究竟是找一份工作一邊工作一邊自學(xué)千康,還是找一個(gè)培訓(xùn)機(jī)構(gòu)學(xué)習(xí)更靠譜一些享幽。第一次在知乎提問,求大神指點(diǎn)迷津拾弃。多謝了值桩。
我的回答:站在我個(gè)人的角度,肯定是自學(xué)靠譜豪椿,因?yàn)槲易约壕褪峭耆詫W(xué)成長起來的奔坟。
但是,我的成長不具有代表性搭盾,因此蛀蜜,不一定具有參考價(jià)值。
雖然是上的是理工科大學(xué)增蹭,但是,對(duì)于設(shè)計(jì)磅摹,繪畫滋迈,人文之類的東西很很興趣,但是人比較迷茫和憂郁户誓,既然如此饼灿,早就做些自己喜歡的事情,例如……翻閱斷子絕孫的柵欄翻墻去后面的東湖釣魚帝美,或者去圖書館把所有繪畫相關(guān)書籍(老圖書館這方面書不多)就借了個(gè)遍碍彭,去臨摹與學(xué)習(xí),彩鉛,油畫棒庇忌,水彩都自娛自樂過舞箍。
大二有了電腦,就自學(xué)Photoshop皆疹,暑假都在刻苦練習(xí)PS技術(shù)疏橄,技術(shù)練得很好,做做平面設(shè)計(jì)略就,PPT設(shè)計(jì)什么的捎迫;下學(xué)期開始自學(xué)flash,制作一些動(dòng)畫片什么的表牢,當(dāng)然窄绒,也是興趣使然,自娛自樂崔兴。
后來大三開始玩社團(tuán)彰导,去了學(xué)校網(wǎng)研團(tuán)隊(duì),小胡子哥閻王也是這里出來的恼布,當(dāng)時(shí)在網(wǎng)頁上弄酷酷的flash螺戳,寫寫簡(jiǎn)單的AS2.0腳本,當(dāng)年流行這個(gè)折汞。再后來倔幼,沒什么需求,就開始寫寫幫其他小伙伴應(yīng)付應(yīng)付CSS和HTML的工作爽待,看了一晚上別人實(shí)現(xiàn)的代碼损同,然后就自己可以把頁面鼓搗出來了,可見寫頁面這件事入門門檻太TM低了鸟款。
然而膏燃,上面這些事情其實(shí)都是業(yè)余愛好,自娛自樂何什,和很多牛人同學(xué)不一樣组哩,他們一開始眼界就不一樣,就奔著top級(jí)別的好公司去的处渣,所以伶贰,成長都比較專業(yè)和正軌。像我這種隨性吊子的人暑假就在學(xué)校幫老師干點(diǎn)活算實(shí)習(xí)罐栈,現(xiàn)在想想真想甩當(dāng)時(shí)的自己幾個(gè)嘴巴子黍衙。
等到大四了,玩耍了3年荠诬,看著周圍同學(xué)出國的出國琅翻,直博的直博位仁,或者offer拿到手軟,自己又找不到讀研的理由方椎,BAT都不鳥我聂抢,我心里急啊,這才意識(shí)到辩尊,業(yè)余玩耍自我感覺不錯(cuò)的東西涛浙,在專業(yè)人眼中,就是坨“巧克力冰淇淋”摄欲。所以轿亮,我就出賣自己勞動(dòng)力去創(chuàng)業(yè)小作坊拼命學(xué)習(xí)和成長(吃睡都在公司),老板很喜歡改版胸墙,正好我注,活夠多,于是天天起早貪黑寫頁面迟隅,年寫頁面1千張但骨,所以,CSS和HTML的學(xué)習(xí)有個(gè)很簡(jiǎn)單的方法智袭,就是寫奔缠,很多人寫了個(gè)淘寶首頁,京東首頁好像就覺得我行了吼野,毛線校哎,請(qǐng)整站完整寫一遍,寫他個(gè)上百個(gè)頁面瞳步,然后對(duì)比自己的實(shí)現(xiàn)和對(duì)方的實(shí)現(xiàn)有什么不一樣闷哆,前端這個(gè)東西有個(gè)好處,就是都是明文的单起,尤其CSS和HTML抱怔,壓縮都沒法壓縮,就去去空格換行之類嘀倒。遇到疑問之處屈留,全部搞懂它,那成長速度测蘑,蹭蹭蹭的灌危,比去培訓(xùn)班快,聽來的看來的帮寻,不如自己實(shí)踐來的快。
后來畢業(yè)了赠摇,大家都快快樂樂地去上班了固逗,我就把小作坊的工作辭掉了浅蚪,裸辭,然后遠(yuǎn)走他鄉(xiāng)閉關(guān)學(xué)習(xí)去了烫罩∠О粒可以看出我還是很有想法,很有個(gè)性的一個(gè)人贝攒,甚至很多溫室中一帆風(fēng)順長大的自我感覺很好的人不理解盗誊,你一邊工作一邊學(xué)習(xí)就好了。正如問題五提到的隘弊,人貴自知哈踱,你希望你以后成為什么樣的一個(gè)人,當(dāng)時(shí)我是希望自己3年內(nèi)可以成為前端技術(shù)牛人梨熙,但是开镣,一看自己,就會(huì)寫點(diǎn)頁面咽扇,JS是個(gè)渣邪财,后端語言是個(gè)P,弱項(xiàng)非常明顯质欲,要想以后高度足夠高树埠,這些基礎(chǔ)一定要打牢實(shí)。但是嘶伟,如果一邊工作一邊學(xué)習(xí)怎憋,考慮到之前小作坊每天都是早9點(diǎn)到凌晨1點(diǎn),每周只有半天休息的狀態(tài)奋早,屁的時(shí)間給你學(xué)工作以外的知識(shí)盛霎,你就會(huì)發(fā)現(xiàn),你的技術(shù)一定會(huì)早早遇到瓶頸耽装,然后就成為一個(gè)普通的技術(shù)人員愤炸,和自己未來的期望背道而馳。于是倒退下來掉奄,我需要學(xué)一門后端語言规个,需要把JS進(jìn)行系統(tǒng)學(xué)習(xí),把基礎(chǔ)夯實(shí)姓建。
這次閉關(guān)共耗費(fèi)我9個(gè)月時(shí)間诞仓,獨(dú)自離家,直接去了一個(gè)從未去過的省份去閉關(guān)速兔,9個(gè)月的時(shí)間把之前小作坊賺的小錢全部耗費(fèi)光光墅拭,收獲的是可以自己用php+sql做一個(gè)動(dòng)態(tài)網(wǎng)站,基本上算是和全棧涣狗,把JS基礎(chǔ)夯了一遍谍婉。學(xué)習(xí)的方法是看書舒憾,《php和mysql程序設(shè)計(jì)》,《JavaScript高級(jí)程序設(shè)計(jì)》和《JavaScript語言精粹》穗熬,反復(fù)看镀迂,反復(fù)理解與記憶,一頁都不訪問唤蔗,其中實(shí)例全部都親自跑一遍探遵,看完后,給自己安排了個(gè)項(xiàng)目妓柜,從0到1把自己個(gè)人網(wǎng)站建起來箱季,純自己手寫代碼,算是自己閉關(guān)學(xué)習(xí)的一次考試领虹,結(jié)果個(gè)站從設(shè)計(jì)到開發(fā)上線规哪,共花了我3個(gè)月時(shí)間,因?yàn)榘暾馁~戶體系塌衰,以及諸多內(nèi)部頻道和外部頻道诉稍。
雖然我的自學(xué)故事才說了一半,但已經(jīng)足夠回答這個(gè)問題了最疆。
其實(shí)姑娘和我當(dāng)初的經(jīng)歷有些許類似杯巨,由于業(yè)余興趣玩過一些網(wǎng)頁相關(guān)的東西,然后現(xiàn)在希望重拾并進(jìn)入這個(gè)行業(yè)努酸。我是從興趣向職業(yè)轉(zhuǎn)移服爷,這其中是9個(gè)月小作坊+9個(gè)月閉關(guān),共計(jì)18個(gè)月也就是1年半的高強(qiáng)度前端知識(shí)積累获诈,外加我還有計(jì)算機(jī)專業(yè)背景仍源。所以,你這個(gè)問題舔涎,尤其看到“無從下手”笼踩,“少走彎路”這些詞,我覺得你無論是一邊工作一邊學(xué)亡嫌,以及還是培訓(xùn)班嚎于,最后的結(jié)果都會(huì)是“問題一”,想變成職業(yè)沒這么簡(jiǎn)單的挟冠,我覺得你需要破釜沉舟于购,自斷后路的勇氣,前路一定挫折不斷知染,如果沒有足夠的心理預(yù)期肋僧,最后可能就變成嘴上說說而已。什么“少走彎路”,有這種想法恰恰容易走彎路嫌吠,認(rèn)準(zhǔn)目標(biāo)伪窖,直接義無反顧往前沖,哪怕路上是荊棘是深溝居兆,也不要退卻,這此時(shí)絕對(duì)的直線之路竹伸,才是真正的捷徑泥栖。所以,自學(xué)也好勋篓,培訓(xùn)也好吧享,形式根本不重要,重要的是你的心到底有多勇敢譬嚣。
8.前端工程師和 UI 設(shè)計(jì)師該如何選擇钢颂?
原問題地址是:https://www.zhihu.com/question/21630068
問題描述如下:
本人大四了,正準(zhǔn)備校招呢~可是本人是學(xué)計(jì)算機(jī)的拜银,本人特別喜歡設(shè)計(jì)殊鞭,ui設(shè)計(jì) 視覺設(shè)計(jì)平面設(shè)計(jì)啦等等,熟練ps尼桶,給朋友做過設(shè)計(jì) 操灿,也設(shè)計(jì)這網(wǎng)頁。由于大部分時(shí)間都 學(xué)前端了泵督,所以設(shè)計(jì)的軟件就熟練ps趾盐。我當(dāng)然也不討厭編程,前端開發(fā)需要的基礎(chǔ)我都會(huì)小腊,也做過不少的網(wǎng)站項(xiàng)目救鲤,但是一想到以后想做好前端開發(fā)還要學(xué)的語言多了去了我就頭疼,但是想到設(shè)計(jì)不管以后要學(xué)什么還是怎么樣我都不煩秩冈,我不知道該選網(wǎng)頁設(shè)計(jì)和前端開發(fā)這兩個(gè)職業(yè)的哪一個(gè)本缠。我想選設(shè)計(jì)但我不是設(shè)計(jì)專業(yè)的,我不是學(xué)設(shè)計(jì)的是不是一般公司都不會(huì)鳥我漩仙。搓茬。?但是前端要做好學(xué)的東西太多队他。卷仑。而且 前端是不是就是程序員?麸折。锡凝。
我的回答參見“問題六”我的經(jīng)歷,你具備了傳統(tǒng)意義上真正優(yōu)秀前端的基本潛質(zhì)垢啼。網(wǎng)頁設(shè)計(jì)勸你就不要做的窜锯,千萬不要把興趣沖動(dòng)當(dāng)才華张肾,非設(shè)計(jì)專業(yè)要想在設(shè)計(jì)領(lǐng)域有所造詣,除非個(gè)別天才锚扎,基本上是不可能的吞瞪,設(shè)計(jì)理論和設(shè)計(jì)素養(yǎng)這些東西很難補(bǔ)的,而這些決定了以后的高度驾孔。我當(dāng)年就是看到了專業(yè)第一同學(xué)的作品芍秆,意識(shí)到我20年都追不上,放棄了做設(shè)計(jì)的打算翠勉。但是妖啥,業(yè)余從事設(shè)計(jì)的這段經(jīng)歷對(duì)你從事前端大有裨益,尤其是偏體驗(yàn)方向的前端对碌。我工作之前并未意識(shí)到自己這方面的優(yōu)勢(shì)荆虱,后來去了騰訊,我才發(fā)現(xiàn)朽们,我本身細(xì)膩的性格以及以前的那些設(shè)計(jì)和動(dòng)畫方面的積累怀读,是我和其他前端相比而言最大的優(yōu)勢(shì),這也是我后來更多的學(xué)習(xí)中心向交互體驗(yàn)這塊發(fā)力的原因骑脱,可以充分發(fā)揮自己的優(yōu)勢(shì)愿吹,讓自己更具有不可替代性。
所以惜姐,你可以選擇前端設(shè)計(jì)這個(gè)職位犁跪,臥槽,我給你講歹袁,超級(jí)稀缺的坷衍,要代碼寫得溜,要設(shè)計(jì)敏感条舔,基本上就是計(jì)算機(jī)背景但對(duì)設(shè)計(jì)感興趣的那些人枫耳,居然你就是這樣的。哎呀孟抗,居然問題是2年前的迁杨,不知道你現(xiàn)在再做哪一塊工作。要是真的做了設(shè)計(jì)師凄硼,我覺得可惜了铅协。真正的前端,應(yīng)該是負(fù)責(zé)人機(jī)交互的摊沉,和交互與體驗(yàn)走的更近狐史,而這類職位就需要兼顧代碼和設(shè)計(jì),是個(gè)是個(gè)交叉職位,和傳統(tǒng)意義上的程序員其實(shí)并不是一路的骏全,通常玩不到一塊的苍柏,反而和設(shè)計(jì)師走的比較近,哈哈姜贡。
9.如何面試前端工程師试吁?
原問題地址是:https://www.zhihu.com/question/19568008
問題描述如下:
需要考察的重點(diǎn)有哪些?有什么方法能夠有效地判斷其水平楼咳?
我的回答:通常我并不參與面試潘悼,但如果有面試,通常會(huì)花半小時(shí)對(duì)候選人各方面信息有盡可能的了解爬橡。
我很不喜歡自己準(zhǔn)備一些沒什么養(yǎng)料的問題去問面試者,而總是盡可能讓面試人員自己表達(dá)自己認(rèn)為最厲害的地方棒动,可以是JS的也可以是CSS的或者HTML的糙申,SVG以及Canvas也是可以。面試的最終目的并不是一場(chǎng)應(yīng)試考試船惨,而是在對(duì)候選人能力等不確定的情況下進(jìn)行準(zhǔn)確評(píng)估柜裸。如果你搞幾個(gè)固定的題目,那些面試黨說不定正好研究了這個(gè)題目粱锐,也有能力不錯(cuò)的人技術(shù)棧并不在你這個(gè)點(diǎn)上疙挺,這招聘質(zhì)量就會(huì)大大折扣。
所以怜浅,我的策略是铐然,把你最厲害的一面展示出來,然后恶座,讓我來看看你這個(gè)最厲害的一面到底有多厲害搀暑,然后根據(jù)其表述話語中一些有意思的信息進(jìn)行深入提問,為什么會(huì)這樣跨琳?有沒有其他策略自点?當(dāng)時(shí)你是怎么想的?最后效果怎么樣脉让?之類的問題桂敛,可以看看對(duì)待問題的思路,技術(shù)的深度是怎樣的溅潜。
千萬不要拿自己的長處去面別人术唬,而是發(fā)覺對(duì)方的長處,然后看看能否給團(tuán)隊(duì)帶來足夠的幫助滚澜。
除了技術(shù)碴开,也會(huì)考察候選人的溝通表達(dá)能力,以及特質(zhì)方面的一些東西。例如潦牛,這個(gè)人回答問題比較的油眶掌,技巧性很強(qiáng),抱歉巴碗,你大概率會(huì)被斃掉朴爬,上頭更喜歡簡(jiǎn)單純粹的小伙伴,因?yàn)閷?duì)整個(gè)團(tuán)隊(duì)而言是有好處的橡淆,因?yàn)橛偷娜颂嗾儇瑘F(tuán)隊(duì)就不好帶了。
總之逸爵,就是從多個(gè)維度勾勒出候選人的輪廓具滴,然后看看是否是團(tuán)隊(duì)目前需要的拼圖。
對(duì)于面試者师倔,我這里有個(gè)建議构韵,盡量展示最真實(shí)的自己,因?yàn)槟愀静恢缿?yīng)聘團(tuán)隊(duì)需要的是怎樣的人趋艘,例如疲恢,本希望招一個(gè)神經(jīng)刀,你反而刻意一本正經(jīng)瓷胧,只能有緣無分了显拳,豈不可惜了彼此。
10.前端工程師們搓萧,你們對(duì)前端的興趣是什么杂数?
原問題地址是:https://www.zhihu.com/question/29071150
問題描述如下:
難道沒有真正喜歡前端的嗎QAQ 大一妹子,信息安全專業(yè)瘸洛,剛剛確定了自己以后的方向耍休,擁抱大前端,并希望著幾年后可以以前端工程師的身份來介紹自己货矮,但我確定自己前端方向的時(shí)候可能有些坎坷羊精。希望可以從知乎中得到前輩們的經(jīng)驗(yàn)和指點(diǎn)。我確定前端方向的時(shí)候很坎坷囚玫,想了好多喧锦,放棄了好多,但是很好奇前端界的前輩們?yōu)槭裁磿?huì)選擇前端工程師呢抓督,你們的興趣在哪里燃少?
我的回答:老實(shí)講,我之所以選擇前端這個(gè)職位铃在,是因?yàn)槲移渌麞|西做不來阵具,我其實(shí)國標(biāo)跳得蠻很不錯(cuò)的碍遍,身高身材力量柔韌性都有成功國標(biāo)高手的潛力,但是當(dāng)時(shí)的性格比較內(nèi)向阳液,具有輕微的社交恐懼怕敬,對(duì)于一個(gè)需要親密舞伴的舞蹈,自己覺得路不太好走帘皿。我其實(shí)對(duì)設(shè)計(jì)也很感興趣东跪,但是總是有力使不出來的感覺,空有技術(shù)鹰溜,但設(shè)計(jì)出來的東西虽填,咳咳,當(dāng)作廁紙我都覺得有辱屁股曹动,以后就算硬著頭皮做下去斋日,估計(jì)也就是一個(gè)普通的設(shè)計(jì)打雜人員。我的專業(yè)是生物信息技術(shù)墓陈,生物這玩意兒不念個(gè)博士恶守,基本上也是苦逼的打工命,可憐跛蛋,我要想念博士,必須考研痊硕,但找不到考研的理由,所以,生物這條路只能以后想辦法曲線救國了懈涛。信息就是計(jì)算機(jī)端仰,大學(xué)時(shí)候我計(jì)算機(jī)編程起步相對(duì)比較晚,我上大學(xué)之前網(wǎng)吧都沒去過盒揉,大學(xué)用電腦鍵盤都是要一個(gè)字母晋被,一個(gè)字母盯著然后再敲的,如何和初中就VB拿獎(jiǎng)的同學(xué)比刚盈,雖然也學(xué)了些理論知識(shí)羡洛,但當(dāng)時(shí)連程序是什么都是一臉懵逼,更別談實(shí)際操作了藕漱。
后來發(fā)現(xiàn)就前端好像玩得來欲侮,要會(huì)懂點(diǎn)ps,要會(huì)寫點(diǎn)代碼肋联。寫代碼面向過程即可威蕉,并且效果所見即所得,興趣很容易被燃起來橄仍。然后我就開始選擇做前端了韧涨。
當(dāng)你做其他東西都不順心的時(shí)候牍戚,突然發(fā)現(xiàn)某項(xiàng)東西做的非常得心應(yīng)手,這個(gè)東西很自然就會(huì)變成你的興趣所在虑粥,而這個(gè)興趣反過來又會(huì)讓你堅(jiān)持不斷做這件事情如孝,形成一個(gè)良性循環(huán),最終成為你的終身職業(yè)舀奶。
11.Web前端開發(fā)前景如何暑竟?
原問題地址是:https://www.zhihu.com/question/20287740
我的回答:我其實(shí)并不關(guān)心Web前端開發(fā)前景如何,正如我當(dāng)年選的這個(gè)職業(yè)一樣育勺,根本就沒有想過以后會(huì)如何如何但荤。所以三十年河?xùn)|三十年河西,如果有一個(gè)工作機(jī)會(huì)擺在你面前涧至,分別是十年前的聯(lián)想和騰訊以及現(xiàn)在的聯(lián)想和騰訊腹躁,請(qǐng)問你會(huì)如何選擇?
同樣的南蓬,十年前的.net開發(fā)和網(wǎng)頁美工以及現(xiàn)在的.net開發(fā)和前端開發(fā)纺非,請(qǐng)問你會(huì)如何選擇?
未來其實(shí)是不可預(yù)期的赘方,金融危機(jī)出現(xiàn)之前烧颖,大家根本就吃意識(shí)不到會(huì)出現(xiàn)金融危機(jī)。
人的職業(yè)生涯長達(dá)40年窄陡,而科技行業(yè)的發(fā)展這么快炕淮,在你的職業(yè)生涯有生幾年,Web前端開發(fā)一定會(huì)衰落下去跳夭,說不定10年后就直接嗶嗶了涂圆。難道就因?yàn)檫@個(gè)你就不從事這一行了?萬一前端由于其簡(jiǎn)單以及廣泛適用性币叹,可以再興盛個(gè)30年呢润歉?
我說這么多是什么意思呢?如果我們能把職業(yè)生涯像賭博一樣交在所謂的前景上颈抚,其實(shí)非常危險(xiǎn)的一件事情踩衩,就像隨波的樹葉,很難掌控自己的前進(jìn)的方向贩汉,隨時(shí)都有傾覆的危險(xiǎn)九妈。我真正關(guān)心的應(yīng)該是,你的內(nèi)心是怎么想的雾鬼?你的興趣在哪里萌朱?你想成為怎樣的人?你的理想是什么策菜?你的價(jià)值觀是怎樣的晶疼?
正如喬布斯說的那樣:“follow your heart!”——追隨你的內(nèi)心酒贬!
除了職業(yè)本身,我們還應(yīng)該隨時(shí)注意提高自己在軟實(shí)力方面的競(jìng)爭(zhēng)力翠霍,溝通表達(dá)锭吨、為人處事、團(tuán)隊(duì)協(xié)作寒匙、項(xiàng)目推動(dòng)等等零如,日后即使行業(yè)不景氣了,也不要擔(dān)心隨風(fēng)而去锄弱。
當(dāng)然考蕾,如果只回答問題字面上的提問內(nèi)容,我認(rèn)為前端開發(fā)還是可以繼續(xù)持續(xù)会宪,如果非要加web這個(gè)前提肖卧,那就不好說了,瀏覽器這個(gè)二級(jí)殼子在下一代大規(guī)模端設(shè)備出現(xiàn)的時(shí)候說不定就沒了掸鹅,自然也就沒有web這種說法塞帐。
為什么我的我對(duì)前端開發(fā)前景這么肯定呢,因?yàn)樵绞呛?jiǎn)單的東西巍沙,越是容易普及的東西葵姥,越是能夠興盛昌盛,經(jīng)久不衰句携。前端開發(fā)除了在web上榔幸,還可以出現(xiàn)在桌面軟件上,各種物聯(lián)網(wǎng)端务甥,甚至操作系統(tǒng)都前端開發(fā)來搞牡辽,因?yàn)樽銐蚝?jiǎn)單喳篇。簡(jiǎn)單事物生命力更旺盛敞临,這是億萬年生物演化驗(yàn)證的哲理。
HTML和CSS是偉大的發(fā)明麸澜,簡(jiǎn)單實(shí)用挺尿;JavaScript其實(shí)也很偉大,別聽那些程序員瞎嗶嗶JavaScript的一些不足炊邦,對(duì)于那些被C编矾,C++奶大的程序員,自然會(huì)覺得JavaScript的套路很奇怪馁害,也會(huì)詬病性能方面的東西窄俏。
但是如果站在設(shè)計(jì)師和普通開發(fā)人員的角度而言,如果沒有被C碘菜,C++這些東西污染凹蜈,就會(huì)覺得JavaScript就像是一個(gè)靈動(dòng)的精靈限寞,親切自由灑脫奔放隨性,套路比較符合現(xiàn)實(shí)認(rèn)知仰坦,非常適合人機(jī)交互這種場(chǎng)景履植。當(dāng)然,如果你要使用JavaScript實(shí)現(xiàn)傳統(tǒng)后端或者桌面軟件的功能悄晃,則自然現(xiàn)在的套路是有不足的玫霎,這就是ES6開始出現(xiàn)的原因,是用來讓傳統(tǒng)的那些程序員舒服開心的妈橄。
當(dāng)我們判斷一件事情的大方向趨勢(shì)的時(shí)候庶近,套用古代哲學(xué)思想其實(shí)是非常好的一件事情,這些思想之所以可以流傳千年眷细,肯定是有其道理的拦盹。如果我們只專注當(dāng)下表面的那些信息去做判斷,很容易會(huì)導(dǎo)致大方向錯(cuò)誤溪椎。就好像你進(jìn)入一個(gè)迷霧森林普舆,如果你只是根據(jù)當(dāng)前的樹木和路進(jìn)行方向判斷,你很容易迷路校读,走錯(cuò)方向沼侣,但是如果你以天空中的北斗星作為方向去指引的話,你永遠(yuǎn)不會(huì)走錯(cuò)路歉秫。
如果這個(gè)問題的本意是問“Web前端開發(fā)錢景如何蛾洛?”,我只是說三十六行雁芙,行行狀元轧膘,任何行業(yè),哪怕你是清潔工兔甘,需要做到頂尖谎碍,“錢景”根本就不要擔(dān)心的。
這個(gè)問題好像是2014年提出來的洞焙,現(xiàn)在來看蟆淀,前景感人,感人沒有引號(hào)澡匪,是真的感人熔任,2016年培訓(xùn)最火的職位,同時(shí)也是競(jìng)爭(zhēng)最激烈的職位唁情。
12.后記
人生路漫漫疑苔,找準(zhǔn)目標(biāo),認(rèn)準(zhǔn)方向甸鸟,堅(jiān)持不懈惦费,終有所成赛惩。成長路上,最忌猶豫不決趁餐,瞻前顧后喷兼,定要破釜沉舟,一往無前后雷,否則還是不要入此行季惯,找個(gè)閑職做做好了。
共勉共成長臀突!
感謝閱讀勉抓!