市面上的學習資料已經(jīng)很多摔踱,但是缺點是內(nèi)容太多了导俘,讓人無從下手。所以若河,我們做了一份極《極簡WEB前端學習指南》幅狮。只把最重要的資料和學習方法記錄下來募强,提供給大家,希望大家不要貪多崇摄,能夠從這份極簡指南入手擎值,把知識學深學透,而不要貪多嚼不爛逐抑。
其實最重要的能力都是做出來的鸠儿,光看書、看視頻都沒有任何用途厕氨。任何大牛都代替不了自己的動手能力进每,扎克伯格10歲開始接觸電腦,高中開發(fā)出價值上百萬美元的應用命斧;喬布斯中學就黑了長途電話公司田晚,這些都是勤于實踐的結(jié)果。大家可以想一下国葬,從小到大的生活中有沒有真正嘗試過實踐能贤徒?有沒有在興趣的驅(qū)使下做出任何有趣的東西?如果沒有汇四,請現(xiàn)在就開始嘗試接奈。甚至可以不用看書,直接開始做項目通孽,以寫代碼和思考代替書本單向的傳輸序宦,反而可能更有效果。
很多大牛都不是科班出身利虫,況且國內(nèi)的教育體制其實培養(yǎng)不出人才挨厚。人才都是靠自己奮斗出來的堡僻,比如網(wǎng)易的前端技術(shù)組四個大牛中只有一個科班出身糠惫、Segmentfault的CEO、七牛的CTO钉疫,他們都不是科班出生硼讽;反而科班出身的局限性很大,填鴨式教育會導致人們喪失思考能力牲阁,比如上海這邊復旦固阁、交大壤躲、同濟的研究生好多都進了國企,進了外企备燃,走上了一眼看到頭的職業(yè)路線碉克,從此與技術(shù)大牛無緣。反而比如Segmentfault(國內(nèi)最大的程序員技術(shù)社區(qū))的高陽并齐,高中輟學漏麦,反而能做到程序員社區(qū)的CEO。大牛與常人不同的是驅(qū)動著他的探索精神况褪,與肯學習撕贞,不怕苦的鉆研精神,不管你是否計算機相關(guān)專業(yè)测垛,如果有志與在這個行業(yè)發(fā)展捏膨,我想都是能有所建樹的。
關(guān)于學習方法很多人一上來就是學HTML/CSS/JavaScript食侮,然后JQuery号涯,... 但其實這樣是不對的,就像蓋房子一樣锯七,你是先做細節(jié)還是先搭骨架呢诚隙?當然先搭骨架了。所以首先了解整個結(jié)構(gòu)起胰,然后把內(nèi)容填充進去久又,如果一開始就糾纏于細節(jié),不但很難學好效五,而且非常痛苦地消,稍有不慎就然并卵-放棄學習。所以畏妖,應該先搭框架脉执,再填充細節(jié),甚至來就直接擼項目戒劫,從而在實踐中更有效的學習半夷。
一 搭框架
這里只介紹一個:哈佛《構(gòu)建動態(tài)網(wǎng)站》
從整體上講解網(wǎng)站的整體構(gòu)成,不止是前端了迅细,包括IOS巫橄,Android,無論是什么開發(fā)茵典,其實都應該看下湘换。
網(wǎng)易公開課:http://open.163.com/movie/2010/9/J/J/M7S6PN5ED_M7S94TUJJ.html
哈佛的經(jīng)典的課程,主講老師 David J. Malan是哈佛的明星老師,他不僅講了這門課程彩倚,而且還主講了哈佛的CS-50《CS50: Introduction to Computer Science》筹我,這門課被列為史上最值得推薦的課程之一,不管是電子科學專業(yè)的帆离,或是其它專業(yè)的蔬蕊,人文學科,甚至MBA都會來參加這門課哥谷,可以說以成為一個“現(xiàn)象級”課程袁串。
《構(gòu)建動態(tài)網(wǎng)站》從底層到實現(xiàn)細節(jié)的串連了網(wǎng)站開發(fā)的方方面面,從WEB到服務(wù)器開發(fā)再到數(shù)據(jù)庫呼巷,計算機原理都得到了很好的闡述囱修,連做開發(fā)5年的老司機都完整的看完了整個視頻,是值得反復品味的一個課程王悍。這這是哈佛一個學期的課程破镰,國內(nèi)的程序員培訓居然用四個月時間只培訓前端、后端压储,光華其表鲜漩,敗絮其里,正在的工程師絕不是培訓出來的集惋。
二 填細節(jié)
搭完框架其實可以開始填細節(jié)了孕似,填細節(jié)的過程中一定需要注意練習,可以邊填邊做項目刮刑。教材可以找一份視頻教程看一下喉祭,這里推薦兩個,其實都大同小異雷绢,分別代表了國外和國內(nèi)吧泛烙。
1 Udacity: 納米學位《全棧開發(fā)》先說下優(yōu)點: 課程非常好,又大又全翘紊,不僅包括了前端蔽氨,而且包括如何搭建一個服務(wù)器,以及數(shù)據(jù)庫帆疟,包括網(wǎng)絡(luò)安全鹉究,如何部署可伸縮性的應用等等,不僅全踪宠,而且有一定的深度自赔;并且自帶項目,還有人指導你能完成項目殴蓬,如果能夠?qū)W完匿级,那么技術(shù)是能夠達到一定程度的。?
優(yōu)點說完了說缺點了:非常難染厅,特別是對小白痘绎,估計完成率不會超過5%;本土化不足:全是英文肖粮,使用的工具也都是國外的一些工具孤页,比如Google的接口,不翻墻可能沒法用涩馆;而且他們的服務(wù)器經(jīng)常不穩(wěn)定行施,視頻有時候會出現(xiàn)無法觀看的現(xiàn)象;而且收費比較貴魂那,一個月的收費抵網(wǎng)易整個課程的收費了蛾号。
2 網(wǎng)易云課堂微專業(yè):《WEB前端開發(fā)》還是先說優(yōu)點:簡單、便宜涯雅、夠用鲜结。不知是不是網(wǎng)易對前端的需求量太大了,要求可能不是很高活逆,從JD中就可以看出精刷,職位描述中的要求還不如一些創(chuàng)業(yè)公司。課程是相對比較簡單的蔗候,但是對純前端來說怒允,已經(jīng)是夠用了,而且服務(wù)做的也還可以锈遥,論壇答疑纫事,QQ群;比較接地氣所灸,畢竟是國內(nèi)的項目儿礼,使用的工具啥的是國內(nèi)比較常見的;目前還和有漁學堂合作做了一個線下MOOC中心庆寺,帶著大家一起做項目蚊夫,補齊了線上的不足。
優(yōu)點說完了說缺點:內(nèi)容略簡單:很多常用的庫都沒講到懦尝,雖說基礎(chǔ)才是硬實力知纷,但是常用的庫還是要介紹下的;實踐項目過少:只有一個大項目陵霉,而項目其實是并不可少的琅轧,所以項目還是得靠自己不足;整體內(nèi)容還是偏單薄踊挠,需要大家去自學一定的東西乍桂。
三 做項目
最好的學習方法是實踐冲杀,所以單看課程是沒有的,甚至牛X點的都不用看課程睹酌,邊做項目邊查工具書权谁。以下推薦一些適合前端入門的項目,包括源碼憋沿。
學習方法:看懂旺芽,然后自己寫一遍,貴精不貴多辐啄,一個項目做10遍比做10個項目強
1 實驗樓項目組:http://www.reibang.com/p/c4fed8903c7c
實驗樓是一個提供了虛擬開發(fā)環(huán)境的平臺采章,上面有許多有趣的課程,不用配環(huán)境直接能上手做項目壶辜,作為入門還是不錯的悯舟。
難度:★(初級)
牛逼度:★(一般)
2 仿Taobao系統(tǒng):https://github.com/KeithChou/taobao
可以了解下一個普通的網(wǎng)站是如何構(gòu)成的,完全不涉及到后臺砸民,需要對JS的面向?qū)ο笥兴私馔脊龋@個項目主要是學習一個網(wǎng)站是如何組成的,交互是如何做的阱洪。
難度:★★(中高級)
牛逼度:★(一般)
3 earnfish.com?
使用了amazui和threejs便贵,效果比較驚艷。這個項目主要是學習庫的使用冗荸。
難度:★★(中高級)
裝逼度:★★★(threejs的酷炫動畫)
---------------------------------------------------------------------
分割線:到這步基本達到了一個前端工程師的初級標準
-----------------------------------------------------------------------
4 前端庫清單:https://github.com/dypsilon/frontend-dev-bookmarks
簡介:包括了如何人肉實現(xiàn)動畫承璃、算法、兼容性等等
難度:★★★(自虐級)
牛逼度:★★★(架構(gòu)師級)
四 參考手冊
1 W3C (入門蚌本,經(jīng)典盔粹,簡單)
2 mozila的JS手冊?https://developer.mozilla.org/en-US/Learn
五 書
其實不用看書,網(wǎng)上資料都查的到程癌,這里推薦一本舷嗡。但注意,不要一上來就看書嵌莉,書是當資料查的进萄。
(全文完)