web前端學習經驗
阿新 • • 發佈:2018-12-01
前端菜鳥一枚,分享一下學習經驗。
我認為的經驗之一:stay hungry stay foolish。正如題主所說:發現不管到什麼水平,只要想學就總有你不會的東西。
來看前端技能條,這還不是完整版。
還有
在前端大牛們都學過哪些東西? - 調查類問題回答的一樣:
CSS不能程式設計?用 Less、 Sass、 Stylus、甚至直接用 Absurd,框架除了 Bootstrap還有很多。JS寫多了很麻煩? jQuery。移動開發? Zepto.js。結構不好?找框架, Backbone.js是MVC, AngularJS和 Ember.js是MVVM,Twitter還弄了個事件驅動框架 Flight。庫多了要優化載入? RequireJS。
程式碼質量成問題? Jasmine、 QUnit、 Mocha做單元測試。各種瀏覽器都要測?用 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 Text是 Python寫的,要寫外掛?也學一下。除錯太難?用Chrome開發者工具,一堆API和功能。
光在電腦瀏覽器上跑不給力?移動開發HTML5,離開網路就渣了?HTML5離線應用。不如原生應用?用PhoneGap。想呼叫原生API?開發 Firefox OS應用吧。瀏覽器應用也得會吧,Chrome Firefox都有自己的文件。接著是不是把後端甩了,自己來,裝N ode.js,所以還得學點伺服器知識,想用npm管理node包?linux技巧shell神馬的也得學。想前後端通吃?再看看http協議。Web精通了? node-webkit 讓你可以寫桌面程式了,繼續學吧。
想學模組化開發?看看 CommonJS和 AMD規範。理解JS有偏差?看看 ECMA-262,等等不知道什麼時候第6版就要出了。瀏覽器各不相同,弄不清該怎麼相容?看看 W3C標準,HTML寫出來人看的懂,機器讀不懂?要SEO,要支援殘障人士?看HTML語義化,全會了但IE就是不支援?叫不出名字的瀏覽器尼瑪連JS都不知道是啥?漸進增強。想一次把各種裝置全搞定?響應式設計。
然後上面這些不過是一些討巧的小技術。公司做什麼業務的?瞭解一下行業資訊。面向大眾的產品?互動設計。美工不給力?UI設計。外包和諮詢?設計模式、重構方法、演算法、資料結構。知道軟體工程嗎?瞭解一下 敏捷開發,或許還可以試試TDD、ATDD、BDD。
看了這麼多東西,第一反應是不是求中文文件?學英語去吧。
這些也不過是我目前所能看到的一小部分,而且每段基本都是到了一個邊界,並不是沒得學了,而是繼續學又是另一片天地。真心希望有人能幫我填補知識盲區。另外,我僅把一些知識點串起來,不全或不對的地方請見諒。
小白不要被嚇著了。
第二條經驗:多動手多實踐,使勁折騰,但不要瞎折騰。說多了都是淚T_T。如果能做幾個外包,那就太不錯了。即賺錢,還能寫在簡歷上。
至於“class和id的選擇、怎樣合理的佈局、有哪些高手皆知的編碼技巧、有哪些好的編碼習慣等等”這些,多練,多看大牛的部落格,然後自己積澱、思考一下一下,基本問題不是太大。
我還是要推薦下我自己建立的web前端資料分享群606721798,這是web前端學習交流的地方,不管你是小白還是大牛,小編都歡迎,不定期分享乾貨,包括我整理的一份適合零基礎學習web前端的資料和入門教程。