天天看點

關于前端的思考與感悟

萬事開頭難。

當我想要認真寫一篇文章向大家分享我對前端的認識與感悟的時候,突然就深刻的體會到了這句話确實太有道理了。

最近幾年對于web前端的傳聞很多,比如人才稀缺,簡單易學,待遇豐厚,整體勢頭發展良好等等。遇到過一個不太熟搞背景開發的同僚跑來問我學習前端 需要掌握哪些内容,也聽說過一個搞ios開發準備自學前端半個月然後要去找前端工作,也曾看到過有人對前端市場人才的稀缺這樣吹捧過:

現在,幾乎整個網際網路行業都缺前端工程師,不僅在剛起步的創業公司,對上市公司乃至巨頭這個問題也一樣存在。沒錯,優秀的前端工程師簡直比大熊貓還稀少。

... ...

不僅在國内的網際網路行業,在國外,前端工程師一樣是需求旺盛、供不應求的香饽饽。

對于這樣的吹捧,不反對也不支援。因為由于每個人的位置,經曆的不同,對事總會有不同層面的了解。而作為一個從成都的菜鳥,蛻變成一名北京的菜鳥,也來談談自己對于前端的了解。

一、地域差異

在成都的大部分公司,有一種專門負責切圖排版的網頁工程師。他們需要懂一些ps,然後會使用html與css排版。而這類人往往是剛參加工作不久的 畢業生,響應式布局對他們來說是一種高大上的技能。很榮幸,我也曾經是他們的一員,也正因為如此,我掌握着熟練的切圖技巧,而這個層次,可能就是外人認為 的入門容易吧,然而實際上還差很遠很遠。

另外一種,就是比較厲害一點的程式員。他們會js+一門後端語言,比如php,jsp。但是他們會會更加偏向後端一點,他們将 html,css,js當成一種很基本的東西,更多的邏輯都使用後端語言來處理,并不會那麼清晰的将html頁面與後端語言分離開來。是以我們常常會看到 有的頁面以.php,.jsp結尾。

來了北京之後,才算是見識了真正的web前端。以至于常常會有一種恨自己為什麼不早一點來的感覺,恍如隔世。随着學習的慢慢提升,會感覺到北京的前端更加具有明确的方向。

我們會真正的注重使用者體驗,是以每個頁面都會響應式布局,從pc端适配到最小320px寬度的移動端,更加注重html5/css3的相關知識的運 用,也會為了使用者體驗做很多功能之外的更加合理的處理。會真的很認真的考慮面試中常常會問的如何優化前端性能。是以我們使用gulp+require來構 建前端代碼,壓縮,打包,上傳cdn。

總的來說,在北京,前端更加專業與明确一點,發展更加好一點。

二、興趣是否重要?

我曾經很認真的思考過這個問題,很多前輩大神告訴我,“興趣很重要。”

可是我經過仔細分析自身的情況之後,卻得出了一個相反的結論。

因 為我并沒有發現什麼東西是我感興趣、并且能讓我能夠混口飯吃的。然後現在我也覺得隻要我能夠這樣慢慢努力下去,在前端這個行業裡,還是能夠擁有一席之地。 現實一點來說,隻要你能夠進下心來不排斥它,你就可以選擇它。畢竟人都是要吃飯,要養活自己的,我想大多數人都是沒辦法指着自己的興趣過活的。

《一萬小時天才理論》告訴我們,在某一個方向專注一萬小時,你就能夠成為這個方向的專家。我認為,這個道理,在前端也同樣适用,專注,比興趣更加重要。

三、什麼心态會影響自己的進步?

不堅定。

至少我現在可以肯定的是,前端方向,并不是一個糟糕的選擇。在最初的時候,時常會在ui設計與前端之間搖擺不定。我認為我對ui設計更加感興趣一 點。特别是參與了電信一個視訊播放app的設計之後,更是認為自己未來是有機會成為一名優秀的ui設計師。但是我另外又覺得自己在前端方向會更加快一點提 升自己。于是在很長一段時間裡就糾結在這個問題上搖擺不定,停滞不前。其實不管堅定的選擇哪一個方向,在目前的網際網路行業裡,都是很熱門的選擇,都有出頭 之日。而最大的錯誤就在于,猶豫不決。

浮躁。

如果我最終沒能成為一名優秀的前端工程師,那麼最大的原因肯定就是心态的浮躁。

誰都想要在短期内成為一名學識淵博,經驗豐富,德高望重的前端工程師。我也想,這是很難避免的一個心态問題,别人高額的薪水與自己的困境總是那麼輕 易的擾亂心神。是以一個月從入門到精通,3個月從入門到精通之類的宣傳智語,都是非常受歡迎。然而事實上,這并不可能。打着這些宣傳智語的教育訓練機構,最多 隻能帶你入門。甚至很有可能一位在前端行業沉浮好幾年的老同學都不敢說自己已經在這個行業算得上優秀了。并不是說幾年的時間沒辦法變得優秀,而是能夠靜下 心來潛心修煉的人确實鳳毛麟角。是以其實實際情況是慢慢來,才最快

畢業幾年,感覺自己前進道路上最大的阻礙就是這兩個心态問題。這也正是我開公衆号的初衷所在,我希望能夠靜下心來,将自己學到的東西整理出來,分享 給大家,一來慢慢豎立自己的個人品牌,讓别人能夠更加簡單直接的了解自己,二來也鍛煉自己的心态。在這裡也謝謝大家的關注與支援。

四、 如何應對新技術層出不窮的現狀

很多時候我都會覺得前端對于新人來說其實挺過分的。

想要學習一門ui架構,有什麼easyui,bootstrap,foundation等等。想要搞一個自己的靜态部落格,有什麼wordpress,jekyll,hexo等等

想要學建構工具,有什麼grunt,gulp,webpack等等

還有好多傳說中都很厲害的庫,jquery,angular,vue,react等等

真的眼花缭亂,剛開始怎麼分得清誰比誰好啊。一不小心就走一大堆的彎路。

是以這個時候我們就必須明白一個道理。基礎的重要性在于,他能夠提高我們的學習能力。

bootstrap,angularjs最初于我如傳說中的存在,高不可攀。而且很多公司招人都希望員工能夠掌握這些技術。是以在基礎很薄弱的時候就開始嘗試去學習。很顯然,效果是幾乎沒有的。反而會減少我對于前端的自信,會很容易産生動搖,覺得自己不适合。

可是随着基礎的慢慢提升,我發現要掌握bootstrap與angularjs似乎也沒有那麼難。我甚至能夠看着文檔就有模有樣的将這些技術運用起來。這對于以前的我來說,簡直就是不可思議。

是以,從以前的高不可攀,到現在的觸手可及,讓我明白了基礎的重要性。

而對于最近非常火的react,webpack等,掌握起來也沒有當初那種無法觸及的感覺。這些技術之是以能火,就說明能夠學會的人很多,他并不存在特别難以掌握的瓶頸。如果你的基礎夠牢靠,你就是這些技術的弄潮兒。

五、前端并沒有那麼簡單

前端不簡單的地方,并不在于知識點的掌握,技術的實作,而在于尋找更優解。即使是最簡單的頁面布局,也存在層出不窮的優秀解決方案,比如在大學的時 候,常用table元素來實作幾乎所有的頁面布局,到現在了解文檔流,會運用浮動,各種盒模型,bfc等來實作布局這中間的差距對于一個新人來說是非常巨 大的。

從最初的寫一大堆js代碼,實作一個頁面的小功能,到後來發現有的人隻需要用幾行代碼配合html/css就可以控制整個頁面的所有動畫,這中間的 差距,也是非常巨大的。是以前端并不是外界認為的那麼簡單,甚至并不比掌握好一門後端程式語言那麼容易。是以我們要保持敬畏之心。

六、其他

學習方法

在我這個階段的認識來看,我認為學習最靠譜的方法就是積累。有一個很普遍的假象是,網際網路時代似乎擷取知識越來越容易,很多人都在擔憂所謂的資訊過 剩的問題。然而實際情況卻是,我們更加難以捕捉到對我們來說真正有用的資訊。而前端的知識相對而言更加零散與碎片化,并且越來越多樣化,是以知識的積累則 是一個非常重要的過程。

英語很重要

英語很重要的原因是因為國外的技術比我們發達,我們常常需要閱讀國外的文章來提升自己,也常常需要在google搜尋上找到自己問題的答案

總的來說,在前端的道路上,遇到過動搖,困惑,迷茫。也因為浮躁的心态停滞不前。好在都一步一步的走了過來。并且可以很把握的告訴自己,這個方向,不會虧待我的付出與努力。

花了很多時間,終于把這篇文章寫完了,淚奔!寫文章對于一個程式員來說真的是超級大的挑戰。感悟就是萬事開頭難,中間難,結尾也難。

====================================分割線================================