1. 程式人生 > >web前端學習經驗

web前端學習經驗

前端菜鳥一枚,分享一下學習經驗。
我認為的經驗之一:stay hungry stay foolish。正如題主所說:發現不管到什麼水平,只要想學就總有你不會的東西。

來看前端技能條,這還不是完整版。

還有

 

前端大牛們都學過哪些東西? - 調查類問題回答的一樣:

CSS不能程式設計?用 LessSassStylus、甚至直接用 Absurd,框架除了 Bootstrap還有很多。JS寫多了很麻煩? jQuery。移動開發? Zepto.js。結構不好?找框架, Backbone.js是MVC, AngularJS
Ember.js是MVVM,Twitter還弄了個事件驅動框架 Flight。庫多了要優化載入? RequireJS

程式碼質量成問題? JasmineQUnitMocha做單元測試。各種瀏覽器都要測?用 Karma。測試通過了部署還有問題?持續整合,用 Travis CI。使用者行為也要測?用 Selenium 。樣式測試還有 Viff 。覺得JS都夠麻煩的?用 CoffeeScript

想做動畫?Canvas或SVG還有CSS3幫忙,幹掉Flash。SVG太難畫?用 Snap.svg。想開發遊戲?用Canvas。自己寫FPS太低?用框架,
CreateJS.
。2D太幼稚? three.js幫你用WebGL開發3D,還不夠給力? asm.js讓你在瀏覽器中擁有虛幻3引擎。

這一堆東西都要配置部署,麻煩,用 Grunt,庫太多?用 Bower管理,專案開始要建立各種檔案資料夾?用 Yeoman。開源專案太多了, GitHub.上找,不會?學 Git。順便用 Jekyll託管部落格,不是吧還有 Ruby這玩意...SASS也是Ruby寫的,等等 Sublime TextPython寫的,要寫外掛?也學一下。除錯太難?用Chrome開發者工具,一堆API和功能。

光在電腦瀏覽器上跑不給力?移動開發HTML5,離開網路就渣了?HTML5離線應用。不如原生應用?用
PhoneGap
。想呼叫原生API?開發 Firefox OS應用吧。瀏覽器應用也得會吧,Chrome Firefox都有自己的文件。接著是不是把後端甩了,自己來,裝N ode.js,所以還得學點伺服器知識,想用npm管理node包?linux技巧shell神馬的也得學。想前後端通吃?再看看http協議。Web精通了? node-webkit 讓你可以寫桌面程式了,繼續學吧。

想學模組化開發?看看 CommonJSAMD規範。理解JS有偏差?看看 ECMA-262,等等不知道什麼時候第6版就要出了。瀏覽器各不相同,弄不清該怎麼相容?看看 W3C標準,HTML寫出來人看的懂,機器讀不懂?要SEO,要支援殘障人士?看HTML語義化,全會了但IE就是不支援?叫不出名字的瀏覽器尼瑪連JS都不知道是啥?漸進增強。想一次把各種裝置全搞定?響應式設計。

然後上面這些不過是一些討巧的小技術。公司做什麼業務的?瞭解一下行業資訊。面向大眾的產品?互動設計。美工不給力?UI設計。外包和諮詢?設計模式、重構方法、演算法、資料結構。知道軟體工程嗎?瞭解一下 敏捷開發,或許還可以試試TDD、ATDD、BDD。

看了這麼多東西,第一反應是不是求中文文件?學英語去吧。

這些也不過是我目前所能看到的一小部分,而且每段基本都是到了一個邊界,並不是沒得學了,而是繼續學又是另一片天地。真心希望有人能幫我填補知識盲區。另外,我僅把一些知識點串起來,不全或不對的地方請見諒。

小白不要被嚇著了。

第二條經驗:多動手多實踐,使勁折騰,但不要瞎折騰。說多了都是淚T_T。如果能做幾個外包,那就太不錯了。即賺錢,還能寫在簡歷上。

至於“class和id的選擇、怎樣合理的佈局、有哪些高手皆知的編碼技巧、有哪些好的編碼習慣等等”這些,多練,多看大牛的部落格,然後自己積澱、思考一下一下,基本問題不是太大。

我還是要推薦下我自己建立的web前端資料分享群606721798,這是web前端學習交流的地方,不管你是小白還是大牛,小編都歡迎,不定期分享乾貨,包括我整理的一份適合零基礎學習web前端的資料和入門教程。