前端疲勞

來源:互聯網
上載者:User

標籤:時間   架構   https   應該   更新   摳圖   data-   小學   網站   

 
前端圖譜
圖片源自Jeff Pelletier的博文: The Front-End Spectrum,我進行了漢化。。。
博文地址:https://medium.com/@withinsight1/the-front-end-spectrum-c0f30998c9f0#.284fx8170引子

假如不會遊泳的你不幸落水,碰巧還沒有人會來救你,你是不是會覺得自己只能在絕望中溺水而亡。不,你要同死神抗爭,要在絕望中尋找希望(等下,這難道不是新東方的slogan?)。其實,你依然有兩種方法可以自救。第一種是在生命危在旦夕的巨大恐懼下頓悟,學會了遊泳成功續命;如果你覺得這不可能,那麼就只能用第二種方法了——把你身邊的水全部喝光。

你可能覺得我在逗你。說好的前端呢?別急,聽我娓娓道來。

從入門到入門

自從三個月前寫完了《JS家的排序演算法》之後,我發現自己得了一種病。彼時的我剛剛鑽研了幾天演算法和資料結構,但轉眼間就被那些紛繁複雜的前端技術與工具迷住了雙眼,勾去了魂魄。學習熱情高漲的我,雄心勃勃的制定了一個又一個計劃,馬不停蹄的搜尋下載了各種教程指南,關注訪問了數也數不清的技術部落格與技術社區。我那亢奮的大腦告訴我,我要努力地把前端技能樹上的每一項技能都解鎖並升級。於是,我就一頭紮入了前端的深海中。然而,下水之後我才意識到,原來自己並不會遊泳。

千萬別把開頭的引子當成笑話,我為了救自己真的就是在用第二種方法,試圖喝光身邊的水,妄想嘗遍前端的各種技術。開始時我還並沒有覺得這樣有何不妥,我畢竟還年輕,有大把的時光可以慢慢學習,消化這些喝下去的水。可是,問題在於,前端的這片海是動態。還記得小學數學的那道計算題嗎?一個水池一邊往裡進水另一邊往外排水,問多久能把水池排空。前端技術棧的更新換代如此的頻繁迅速,很可能在我寫下這篇文章的幾個小時裡就有一個新的前端架構被發布出來了,我又怎敢奢求將前端的這灣海水排空呢?最近的我愈發感覺到網上的教程是怎麼學也學不完的,新出的工具packages是怎麼下也下不完的,最新發行的各種技術博文是怎麼看也看不完的。我總是很難將精力只放在一種語言或一個工具上,它們總是不經意間就被分配到了其他地方。有時我甚至開始質疑自己的職業選擇是否正確,一直在入前端的各種門,可究竟何時才能精通,才是個頭呢?迷茫,疲憊,無從下手,不知所措。當這些感受通通向我襲來的時候,我知道,我是得了一種叫做前端疲勞的病了。

經常關注前端技術社區的朋友們應該知道,前段時間有一篇很火的博文,叫做How it feels to learn JavaScript in 2016 ,漢化版叫做在 2016 年學 JavaScript 是一種什麼樣的體驗? 這篇文章引起了國內外眾多前端開發人員們的共鳴。他們揭竿而起,紛紛點贊,大聲疾呼:“我受夠啦!”作為一個代碼寫的比段子好笑的三流程式員,我當然很喜歡這種詼諧幽默的整篇文章都是段子的小品文。作者雖然是歪果仁,但卻深刻的掌握了中國傳統相聲的精髓,設定了一個逗哏和一個捧哏,以對話的形式把涉及到JavaScrip的幾乎方方面面面的工具和特點全部過了一遍。其實,作者就是在談前端疲勞。那麼現在問題來了,有這麼多不同的前端技術棧,不同的前端架構,不同的前端工具和庫像水一樣包裹著我,我不去學就不會,學了又學不完。在前端的海洋裡越陷越深的我究竟該如何自救呢?

水是喝不完的,遊泳才是正道

為了瞭解前端的海有多深多遼闊,我們把文章剛開始的那副前端圖譜拆開來看。


前端圖譜圓盤

你一定能在這張亂花漸欲迷人眼的圓盤圖上發現很多熟悉以及不那麼熟悉的logo。圖的作者Jeff Pelletier不愧是名UI工程師,他的設計真的很好看。布局新穎,造型獨特,五彩繽紛,生動形象。這張圓盤可以說是整個前端圖譜裡的顏值擔當了。然而,光好看是不能解決問題的,我們更加需要的是它的對應顏色的圖解。


對應顏色圖解


不知道看完這張圖解之後的你作何感想?是從入門到放棄呢,還是從入門到轉行?反正當時正打算把前端的水都喝光的我看完之後內心是崩潰的。尤其是看到Back-End也被加了進來,這幅圖瞬間就變成了一副全棧圖譜。

事實上,拋開前端疲勞不談,僅僅是JavaScript,就足夠我用盡自己的洪荒之力了。先要從原生JavaScript學起,“古代”的ES3/ES5,“現代”的ES6,以後還會有“未來”的ES7。然後是JS架構,jQuery、AngularJS、React或者是最新的Vue。當然,想開發出一個完整的應用,後端知識也必不可少。所以NodeJS的坑也得入。這一套走下來,可能根本還到不了前端疲勞,就已經JS疲勞了。

好在此時的我終於意識到了,把水喝光是不現實的。因為這樣做的後果很可能並不是被淹死,而是先被撐死。每當看到前端技術社區裡接二連三的出現從未聽聞過的新的名詞,新的工具,新的架構,我就會產生一種深深的落伍甚至自卑感,覺得自己什麼都不會,嚴重懷疑自己正在使用的技術棧是不是早就被拋棄在了前端世界那無人的盡頭。但我可不想就這樣消失在世界的盡頭。我需要做的是立刻停止一切恐慌,閉上嘴巴,儘快熟悉這種全身被水包圍的感覺,然後嘗試讓自己浮起來,把頭抬出水面,找到一塊陸地,接下來,就是朝著那塊陸地的方向,掄起膀子甩開腿,遊起來吧。

拯救前端疲勞你不是一個人在戰鬥

一開始我總覺得前端疲勞是因為自己的學習能力不足進而受挫而導致的心理疲憊。我不願意跟別人說,因為覺得有點丟人。然而,當我在很多前端開發人員們的部落格裡看到他們也提到了這種疲勞的問題,我才知道,原來我不是一個人在戰鬥。這種疲勞感普遍存在於前端開發人員當中。即使是那些頂尖的大牛們也會偶爾疲憊困惑,但他們總能很快的找到解決之道。所以,如果你也有這樣的困惑與疲勞,並且試圖找到方法來克服它,請記住,你不是一個人在戰鬥!

夯實基礎

不知道是我的幻覺還是事實,前端程式員好像一直是處在程式員鄙視鏈條裡的最底層。不需要懂編譯原理,沒必要學演算法資料結構,只要懂點HTML/CSS以及JS,會摳圖知道怎麼引用個庫,就可以去建網站了。根據我自身的體驗,如果只是建一個蹩腳的只有自己會訪問的網站,那麼確實這樣就夠了。可是,一旦遇到邏輯更複雜的網頁應用,僅靠這些知識可就完全hold不住了。當然,僅僅理解了這點對我並沒有協助。我反而陷入到了另外一種死迴圈中,就是不停的去學習新的工具,新的架構,新的別人造的輪子。

事實上,無論那些工具和架構變得有多麼快,最基礎的知識是一直都不會變的。我們應該把注意力放在怎樣去解決問題,放在問題本身,而不是糾結於工具。要知道,工具肯定會一直變,唯解決問題的方法與思路不會變。現在風頭正勁的React可能過幾年就會消失,但是JavaScript會接著活下去。即使JavaScript有一天也被遺棄,演算法、資料結構和那些設計模式也會長久存在。所以,從長遠來看,把更多的精力花在學習架構、設計模式以及演算法資料結構等更基礎的領域比總是追求那些新奇的架構工具要更加有利於我們的技能成長與職業發展。

放鬆心態

其實,前端疲勞的病灶不在於那些繁多的工具與架構,它們被造出來的初衷就是為了更好地解決相應的問題,這個鍋它們可不背。真正的原因還是出自我們自身。我們總是會被新鮮的事物所吸引,總覺得我們應該去學習它,不學就會落伍,就會被時代的潮流所拋棄。畢竟,喜新厭舊可能就是我們人類的天性。

我不太清楚國內互連網公司的情況,就我自己所在的美國來說,很大一部分的美國公司是不會去追趕潮流的。他們使用的是早已證明了自己擁有良好效能表現的那些成熟的語言和架構。對於最新的前端技術,他們大多都是持觀望態度。等到這種技術已經可以證明自身的穩定以及效能的優異時,他們才會慢慢的去過渡。

因此,沒必要為了自己認為的不落伍而去趕潮流。放鬆心態,專註於自己目前正在使用的技術棧。對於那些新技術,有興趣當然可以去嘗試,不去嘗試也沒有關係。不過,如果確實準備去嘗試了,要專一不要貪心,千萬別給自己列一堆新技術的學習計劃,然後最後沒有完成就只能變成無形的壓力堆積在心裡了。

實踐最重要

對於前端學習,我之前有一個很大的誤區。面對一項新技術,我總是計劃先把理論研究一遍,再去上手操作。然而,這種策略給我造成的後果就是,很多技術的學習我都半途而廢了,因為理論很枯燥,還沒等到實踐就已經對它失去了興趣。這和學遊泳是一個道理。想學遊泳就應該直接紮到水裡,驚濤拍浪。那些在岸上捧著本流體力學研讀的人,不僅不可能掌握遊泳的訣竅,還會對遊泳失去興趣。

所以,對於那些基礎知識,我們當然需要進行理論層面的研讀。然而,對於很多前端技術,我們就應該放下手中的手冊與指南,直接上手,在實踐中摸爬滾打,方能求得真知。

尾聲

“那個選擇把水喝光的年輕人最後怎麼樣了?”
“我們開船路過這片海的時候剛好發現了他,就把他救了上來。當時他整個人已經昏迷了。”
“那他活過來了嗎?”
“他死了。醫生說本來可以救他一命,可是沒想到他喝了那麼多水,把自己給撐死了。”
“那另外一個學會了遊泳的年輕人呢?”
“我們把他救上來以後他吃了點東西。可他一直很亢奮,說自己終於會遊泳了,然後吃完東西他又跳回海裡遊泳去了。。。”
(完)

前端疲勞

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.