自從接觸網(wǎng)站開發(fā)以來到現(xiàn)在已經有六個年頭了,今天偶然整理電腦資料看到當時為參加系里面一個比賽而做的*個網(wǎng)站時,勾起了在這網(wǎng)站開發(fā)道路上的一串串回憶,成功與喜悅、煩惱與糾結都歷歷在目,感慨頗多。在此與大家分享,希望對初學Web前端的各位童鞋來說有所幫助。歡迎各位吐槽、拍磚。
先從大家學習上的一個誤區(qū)開始談起。
前端開發(fā)是一個近幾年興起的新興行業(yè),所以遠沒有電子商務那樣成熟的課程體系,*內也沒有完整的前端課程體系,所以學習前端在國內無非就是培訓,以及自學。
培訓是針對那些有條件的人來說,很多小伙伴更喜歡的是自學。但是一個人自學畢竟力量是有限的,為了讓想學習的人可以更好的學習,給大家推薦一個裙,前面是6 1 1,中間是肆 二 8,*面就是壹 四 ?二,這里有很多想學習的人和你一起交流,也有大牛每天晚上免費教學,想要學習的人都可以加入我們,但是我們只歡迎想學習的人,不是來學習,隨便看看的就不要進了。
Web前端的學習誤區(qū)
網(wǎng)頁制作是計算機專業(yè)同學在*期間都會接觸到的一門課程,而學習網(wǎng)頁制作所用的*個集成開發(fā)環(huán)境(IDE)想必大多是,這種所見即所得的“吊炸天”IDE為我們制作網(wǎng)頁帶來了極大的方便。
入門快、見效快讓我們在不知不覺中已經深深愛上了網(wǎng)頁制作。此時,很多人會陷入一個誤區(qū),那就是既然借助這么帥的IDE,通過鼠標點擊菜單就可以快速方便地制作網(wǎng)頁。
那么我們?yōu)槭裁催€要去學習HTML、CSS、JavaScrpt、jQuery等這些苦逼的代碼呢?這不是舍簡求繁嗎?
但是隨著學習的深入,就會發(fā)現(xiàn)我們步入了一種窘境——過分的依賴IDE導致我們不清楚其實現(xiàn)的本質,知其然但不知其所以然。
因此在頁面效果出現(xiàn)問題時,我們便手足無措,更不用提如何進行頁面優(yōu)化以及完成一些更高級的應用了。其原因是顯而易見的——聰明的IDE成全了我們的惰性,使我們忽略了華麗的網(wǎng)頁背后最本質的內容——code。
正確的方向勝過無謂的努力
有兩只螞蟻想翻越一段墻,尋找墻那頭的食物。一只螞蟻來到墻腳就毫不猶豫地向上爬去,可是每當它爬到大半時,就會由于勞累、疲倦而跌落下來。雖然它不氣餒,一次次跌下來,又迅速地調整一下自己,重新開始向上爬去?!?/p>
另一只螞蟻觀察了一下,決定繞過墻去。很快,這只螞蟻繞過墻來到食物前,開始享受起來;而另一只螞蟻還在不停地跌落下去又重新開始。
很多時候,成功除了勇氣、堅持不懈外,更需要方向。也許有了一個好的方向,成功來得比想象的更快。如果在錯誤的路上奔跑,再怎么努力也是白搭。學習Web前端也是如此,首先應該選擇一個正確的學習路線。
Web前端的學習路線結合我的學習經歷、近年來輔導學生的經驗以及公司中實際項目的需求,在這里將Web前端的學習分為以下幾個階段
*階段——HTML的學習?!?/p>
超文本標記語言(HyperText Mark-up Language 簡稱HTML)是一個網(wǎng)頁的骨架,無論是靜態(tài)網(wǎng)頁還是動態(tài)網(wǎng)頁,最終返回到瀏覽器端的都是HTML代碼,瀏覽器將HTML代碼解釋渲染后呈現(xiàn)給用戶。因此,我們必須掌握HTML的基本結構和常用標記及屬性。
HTML的學習是一個記憶和理解的過程,在學習過程中可以借助的“拆分”視圖輔助學習。在“設計”視圖中看效果,在“代碼”視圖中學本質,將各種視圖的優(yōu)勢發(fā)揮到極致,這種對照學習的方法彌補了單純識記HTML標簽和屬性的枯燥乏味,想必對各位初學的小盆友們來說必定是極好的!
在學習了HTML之后,我們只是掌握了各種“原材料”的制作方法,要想蓋一幢樓房就還需要把這些“原材料”按照我們設計的方案組合布局在一起并進行一些樣式的美化。
于是進入第二個階段——CSS的學習。
CSS是英文Cascading Style Sheets的縮寫,叫做層疊樣式表,是能夠真正做到網(wǎng)頁表現(xiàn)與內容分離的一種樣式設計語言。相對于傳統(tǒng)HTML的表現(xiàn)而言其樣式是可以復用的,這樣就極大地提高了我們開發(fā)的速度,降低了維護的成本。
同時CSS中的盒子模型、相對布局、絕對布局等能夠實現(xiàn)對網(wǎng)頁中各對象的位置排版進行像素級的精確控制。通過此階段的學習,我們就可以順利完成“一幢樓房”的建設。
“樓房”建設完成之后,我們可以交給用戶使用,但是如果想讓用戶獲得更佳的體驗,我們還可以對“樓房”進行更深一步的“裝修”,讓它看起來更“豪華”一些。
為了完成這個任務,我們進入第三個階段——的學習。
是一種在客戶端廣泛使用的腳步語言,在當中為我們提供了一些內置函數(shù)、對象和DOM操作,借助這些內容我們可以來實現(xiàn)一些客戶端的特效、驗證、交互等,使我們的頁面看起來不那么呆板,屌絲瞬間逆襲高富帥!有么有?
此時,也許你還沉浸在給你帶來的驚喜之中,但你的項目經理卻突然對你大吼道:
“這個效果在××瀏覽器下不兼容,重新搞……”
“不兼容?”瞬間石化了有木有?
“我擦,坑爹??!那可是花了我一個晚上寫了幾百行代碼搞定的啊,吐血了都!”
的兼容性和復雜性有時候的確讓我們頭疼,還好有“大神”幫我們做了封裝。
接下來我們進入第四個階段——jQUery的學習。
jQuery是一個免費、開源的輕量級的庫,并且兼容各種瀏覽器(jQuery2.0及后續(xù)版本放棄了對IE6/7/8瀏覽器的支持),同時現(xiàn)在有很多基于jQuery的插件可供選擇,這樣在我們實現(xiàn)一些豐富的動態(tài)效果時更方便快捷,大大節(jié)省了我們開發(fā)的時間,提高了開發(fā)速度,這也充分體現(xiàn)了其write less,do more的核心宗旨。這個Feel倍兒爽!有么有?
“豪華大樓”至此拔地而起,但是每天這樣日復一日,年復一年的蓋樓,好繁瑣!能不能將大樓里面每一個單獨部件模塊化,當需要蓋樓時就像堆積木一樣組合在一起,這樣豈不是爽歪歪?可以實現(xiàn)嗎?答案是肯定的。
這種思想在Web前端開發(fā)中也是適合的,于是乎就出現(xiàn)了各種前端框架,在這里推薦給大家的是Bootstrap。 Bootstrap是Twitter推出的一個開源的用于前端開發(fā)的工具包,是一個CSS/HTML框架,并且支持響應式布局。一經推出后頗受歡迎,一直是GitHub上的熱門開源項目。
在項目開發(fā)過程中,我們可以借助Bootstrap提供的CSS樣式、組件、插件等快速的完成頁面布局和樣式設置,然后再有針對性的微調樣式,這樣基于框架進行開發(fā)大大縮短了開發(fā)周期。站在巨人的肩膀上就是爽!
Web前端的學習建議
*給大家聊聊在學習Web前端中的一些建議和方法。
在CSS布局時需要注意的一個問題是很多同學缺乏對頁面布局進行整體分析,不能夠從宏觀上對頁面中盒子間的嵌套關系進行把握,就急于動手去做,導致頁面中各元素間的關系很混亂,容易出現(xiàn)盒子在浮動時錯位等情況。建議大家在布局時采用“自頂向下,逐步細化”的思想,先用幾個盒子將頁面從整體上劃分,然后逐步在盒子中繼續(xù)嵌套盒子。
“君子生非異也,善假于物也”,在學習的過程中還要多瀏覽一些優(yōu)秀的網(wǎng)站,善于分析借鑒其設計思路和布局方法,見多方能識廣,進而才可以融會貫通,取他人之長為我所用。
同時還要善于使用Firebug這個利器。Firebug一方面可以在我們學習過程中幫助我們調試自己的頁面,另一方面我們可以使用Firebug方便地查看、分析別人網(wǎng)站的源代碼,“偷”也是一種技能!
隨著移動互聯(lián)網(wǎng)熱潮的到來,移動開發(fā)越來越受到大家的追捧,響應式布局、微網(wǎng)站等需求量不斷增加,也是我們Web前端未來的發(fā)展方向之一,學有余力的同學可以多多關注。*祝愿大家能在Web前端開發(fā)道路上走出一片更寬更廣的天地!
一般網(wǎng)上說自學沒啥用,培訓也很坑的,都是站在自己的角度上來說的。
自學真的好嗎?很多時候我們認為自己真的能靠自學來學習一門技術,但是又有多少人真的是靠自學而來的呢?如果現(xiàn)在學習web前端,靠自己看視頻、看書,得需要付出多少的努力才能達到想要的效果呢?并且有了問題也不能及時去解決,這時候適合自學、不適合自學就都知道了。
適合自學的人會想方設法去解決問題,而不適合自學的人,可能就會犯懶,直接的把問題擱置起來。并且自學真的很考驗自制力,自制力不好的人真的不適合自學,因為誘惑太大了!其實,在大家想要學習的時候,都會有疑問:自學好?培訓好?今天就這個問題分析一下。
培訓機構學習優(yōu)勢:學習時間花費相對來說,較短。自學時間會長一點,因為自控力什么的都是非常考驗的。講師授課,可以隨時請教老師,遇到問題能及時解決,技術提升也會很快。系統(tǒng)的學習web前端知識。一般培訓都會有系統(tǒng)的課程,根據(jù)課程安排每天的學習,學習的內容很全面;管理嚴,培訓機構管理很嚴;有伙伴,做起事情來更好,因為小伙伴的相互鼓勵,共同探討,不僅能讓你收獲一批朋友,還對學習有很大的幫助!
自主學習優(yōu)勢:自主學習成本相對來說較低,可以從網(wǎng)上找到相關的書籍、視頻進行學習。鍛煉自己,能從生活總鍛煉自己自主的能力、控制力、協(xié)調力,對自身有一個很大的提高。學習內容會很深刻,自己一步一步學來的,很多知識會牢牢記住在腦海中。
如果你是零基礎初學者的話,建議你先自學一下前端的基礎知識,然后考慮報一個培訓班,因為培訓班的課程速度較快,內容很緊湊,如果你沒有一點基礎知識,很難跟上老師講課的速度。
零基礎學前端的話,這些書籍資料可以參考一下:1、《高級程序設計(第3版) 紅皮書 》,適合有一定編程經驗的Web應用開發(fā)人員閱讀,也可作為高校及社會實用技術培訓相關專業(yè)課程的教材。
2、《權威指南(第6版)》 犀牛書,本書不僅適合初學者系統(tǒng)學習,也適合有經驗的 開發(fā)者隨手翻閱。
3、《
DOM編程藝術
(第2版)》,本書在簡潔明快地講述和DOM的基本知識之后,通過幾個實例演示了專業(yè)水準的網(wǎng)頁開發(fā)技術,透徹闡述了平穩(wěn)退化等一批至關重要的
編程原則和*實踐,并全面探討了HTML5以及jQuery等庫。
4、《CSS權威指南(第三版)》,不管你是一個有經驗的Web開發(fā)人員還是一個徹底的初學者,《CSS權威指南(第3版)》都是你的CSS學習源泉。
5、《設計模式》,適合初學者、前端設計者、程序員學習,也可以作為大專院校相關專業(yè)師生的學習用書,以及培訓學校的教材。
6、《你不知道的(上中下卷) 》,本書既適合語言初學者了解其精髓,又適合經驗豐富的開發(fā)人員深入學習。
7、《Vue.js權威指南》,該書內容全面,講解細致,實例豐富,適用于各層次的開發(fā)者。
學習路線:第1階段:前端頁面重構(4周)
內容包含了:(PC端網(wǎng)站布局項目、HTML5+CSS3基礎項目、WebApp頁面布局項目)
第2階段:高級程序設計(5周)
內容包含:(原生交互功能開發(fā)項目、面向對象進階與ES5/ES6應用項目、工具庫自主研發(fā)項目)
第3階段:PC端全棧項目開發(fā)(3周)
內容包含:(jQuery經典交互特效開發(fā)、HTTP協(xié)議、Ajax進階與PHP/JAVA開發(fā)項目、前端工程化與模塊化應用項目、PC端網(wǎng)站開發(fā)項目、PC端管理信息系統(tǒng)前端開發(fā)項目)
第4階段:移動端項目開發(fā)(6周)
內容包含:(Touch端項目、微信場景項目、應用Angular+Ionic開發(fā)WebApp項目、應用Vue.js開發(fā)WebApp項目、應用React.js開發(fā)WebApp項目)
第5階段:混合(Hybrid,)開發(fā)(1周)
內容包含:(微信小程序開發(fā)、、各類混合應用開發(fā))
第6階段:NodeJS全棧開發(fā)(1周)
內容包括:(WebApp后端系統(tǒng)開發(fā)、一、NodeJS基礎與NodeJS核心模塊二、Express三、noSQL數(shù)據(jù)庫)
視頻教程可前往B站搜索尚學堂官方號,免費教程隨你挑!一、學好HTML
HTML(超文本標記語言)是網(wǎng)頁的核心,因此首先應該學好它,不要害怕,HTML很容易學習的,但也很容易誤用,學懂容易要學精還得費點功夫,但學好HTML是成為Web開發(fā)人員的基本條件。(育知同創(chuàng)教育編者注:隨著HTML5規(guī)范出爐日期將近,了解HTML5也將成為Web開發(fā)人員的必修課)
二、學好服務器端腳本語言
服務器端腳本編程也是Web開發(fā)人員的基本功之一,你只需挑選一個服務器端腳本語言,然后學好它。
三、學好SQL
要構建動態(tài)頁面就必須使用到數(shù)據(jù)庫,但這么多數(shù)據(jù)庫產品,該如何是好呢?別擔心,它們都會遵循標準的SQL原則。
四、學好CSS
涉及到網(wǎng)頁外觀時,就需要學習CSS了,它可以幫你把網(wǎng)頁做得更美觀。
五、學好
今天大部分Web開發(fā)人員都喜歡使用jQuery,學習的基本語法,以及如何使用編程將會提高你的技能。
六、學好正則表達式
雖然它并不像其它知識那么重要,但學習了正則表達式后,如果使用得當將會節(jié)省你很多時間,從驗證到高亮顯示它夠能幫到你。
七、學習一點Unix和Linux的基本知識
這并不是必須的,但知道一點Linux命令不會傷害到你,或許你還不知道,大部分Web服務器都運行在Unix和Linux平臺上,如果我是你,我會去學習一些基本的Linux命令的。
八、了解Web服務器
你不必在這上面花太多精力,但對Apache的基本配置,.htaccess配置技巧有一些掌握的話,將來必定受益,而且這方面的知識學起來也相對容易,不會花多長時間。
九、熟悉版本控制系統(tǒng)的用法
熟悉使用一種優(yōu)秀的版本控制系統(tǒng)將很有用處,你在實際工作中就會發(fā)現(xiàn)精通一種版本控制系統(tǒng)是多么幸福。
十、學好Web框架
當你掌握了HTML,服務器端腳本語言,CSS和后,就應該找一個Web框架加快你的Web開發(fā)速度,使用框架可以節(jié)約你很多時間,如果你使用PHP,可選的框架有CakePHP,,Zend等,Python程序員喜歡使用Django和webpy,Ruby程序員喜歡使用RoR。
只要一個電話
我們免費為您回電