『壹』 怎麼學好前端
最後,多動手,多動腦
學習過程中一定要多動手、多動腦。因為前端的學習會涉及很多的代碼,所以學習過程中對於代碼一定要勤加練習,養成良好的代碼書寫習慣。不要覺得上課看著老師做了,自己就懂了。在學習過程中遇到不會的問題一定要及時與同學老師交流,在解決問題的過程中成長。
經過以上廈門觸控未來的分析,大家對於前端的學習路線想必已經十分清楚了,而前端的學習方法無非就是這三點:學習態度、學習計劃以及多動腦等。所以大家在學習前端開發的時候,尤其是在我們廈門觸控未來學習前端開發時,一定要根據老師安排的課程內容進行學習,制定計劃,不要「妄自菲薄」,好好學習,就一定會有成效。
『貳』 想學前端,應該如何入門
一、首先,在學習之前搞清楚你要做什麼工作崗位,看看招聘網站上的要求有哪些,這些都是你學的動力。也能讓你很快的重新入行。
下面我幫你總結了三條:
1、知識構架。如果題主知識構架比較豐富,那麼你學習前端開發的過程相對較快。同時也是你較強的崗位競爭力。如果不是,建議找人帶你整體梳理一遍。
2、開發場景。前端開發目前在功能上不斷得到拓展,除了傳統的web前端開發之外,還包括Android開發、iOS開發和各大平台小程序開發等,對應的你需要了解、掌握JavaScript、Android開發需要掌握java語言(或者kotlin),而iOS開發則需要掌握OC或者Swift語言。你可以選擇好心儀的公司再去對應學習。
3、實戰經驗。按照題主的情況需要多找項目來練練手,有需要的可以SX我。
二、根據企業的要求,規劃一條科學合理的學習路線圖。請你看下面學習路線圖,完全是針對企業定製化人才需求規劃。避免小白踩坑。
第一階段:前端頁面重構
內容包含了:(PC端網站布局項目、HTML+CSS基礎項目、WebApp頁面布局項目)
第二階段:JavaScript高級程序設計
內容包含:(原生 JavaScript交互功能開發項目、面向對象進階與 ES/ES應用項目、JavaScript工具庫自主研發項目)
第三階段:PC端全棧項目開發
內容包含:(jQuery經典交互特效開發、HTTP協議、Ajax進階與PHP/JAVA開發項目、前端工程化與模塊化應用項目、PC端網站開發項目、PC端管理信息系統前端開發項目)
第四階段:移動端項目開發
內容包含:(Touch端項目、微信場景項目、應用 Angular+Ionic開發 WebApp項目、應用 Vue.js開發 WebApp項目、應用 React.js開發 WebApp項目)
第五階段:混合(Hybrid,ReactNative)開發
內容包含:(微信小程序開發、React Native、各類混合應用開發)
第六階段:NodeJS全棧開發
內容包括:(WebApp後端系統開發、一、NodeJS基礎與NodeJS核心模塊二、Express三、noSQL資料庫)
第七階段:大數據可視化
內容包含:(大數據可視化化基礎與實戰、一、數據可視化入門、二、D.js詳解、三、其他JS庫)
三、學習web前端注意事項:
1.不要以看書學習為主,學習編程不是數學語文那麼容易,你看看例題就會了,更需要的是別人的講解,你自己看書上那些專業的文字,只是憑你自己意識理解的那樣來,但是一般情況下我們都理解不了,畢竟我們不是出書的人,最好的方式就是找視頻進行學習,找好的視頻進行學習,然後在配上別人的解答,再加上自我的主動學習。
2.當你學習的時候,可能會出現學了就忘記不住的情況,小編見過很多這樣的情況,包括自己曾經學習的時候也是這樣。打個比方:比方說我們在學習英語的時候,一天學習20個單詞,但是過了一周之後,我肯定會忘記之前學過的單詞。那麼記住這些單詞最好的辦法就是應用於對話當中。我們學習web前端也是這樣,同一個標簽或者屬性,或者是JavaScript的語法,只有你不斷的見到它,並且應用它,讓它都認識你了,這樣你就扎實的掌握了,所以實際應用非常重要。
3.學習方法決定了你學web前端的效率以及你可以走多遠,學習編程非常依賴一個好的學習方法,有太多人因為學習方法不對最終導致放棄,所以小編讓各位一定注意自己的學習方法,每個人的學習方法不一樣,但是大多數人錯誤的學習方法都是相同的,所以這方面一定要找
四、在學習時要自己了解知道的幾點:
1.了解市場需求
首先,零基礎的人應該去了解目前想要找到一份web前端的工作,應該具備哪些技能,當你符合這些企業的基本標准後,工作就不成問題。先知道自己應該達到什麼標准,然後再去學習,不學無用的知識,只學工作需求大的知識,這可以避免浪費時間,這方面不浪費口舌多說,可以到招聘網站多去搜集一些,或者來問我。
2.制定計劃
既然想在短時間學好一個技術,那麼就應該運籌帷幄,如果你連一個明確的規劃都沒有,那很難說你能比別人做的更好,用更短的時間學好應該掌握的那些技術,一個好的規劃非常重要,有很多人學習的時候就很混亂,結果必然不好。能每天按照計劃完成的人並不多,這需要你個人的自律性,如果自己懶惰,神仙都救不了。你每天應該學習多少知識點,應該如何鞏固,你要很明確。
3.輔助工具
做成一件事,無論個人能力多麼出眾,一定要有好的裝備,那麼對於學習web前端來說,什麼是好的裝備?比如:一個好老師的指導、一套好的視頻教學、一本適合你閱讀的JavaScript書籍、一個適合你的開發工具等等。這些都是輔助你的工具,但是能不能登上珠穆朗瑪峰還要靠你自己,其他的都是好裝備而已,沒這些裝備還不行。
學習的同時敲代碼,多做幾個項目,實踐中成長、遇到難題就記下來,把它搞懂,下次遇到就會敲!
『叄』 前端開發需要學習什麼應該怎麼學
目前前端開發主要通過自學和報班學習兩種途徑學習,自學的難度高一些。
自學的話,要先規劃好自己要學哪些知識,從哪裡入手,有困難如何解決。機構學的話,就要選一個靠譜的機構。近幾年,前端的發展還是非常好的,市場需求大,加上學習起來也相對簡單,有眾多人選擇並學習。
學習的內容包括:
①計算機基礎以及PS基礎
②前端開發基礎(HTML5開發、JavaScript基礎到高級、jQuery網頁特效、Bootstrap框架)
③移動開發
④前端高級開發(ECMAScript6、Veu.js框架開發、webpack、前端頁面優化、React框架開發、AngularJS 2.0框架開發等)
⑤小程序開發
⑥全棧開發(MySQL資料庫、Python編程語言、Django框架等)
⑦就業拓展(網站SEO與前端安全技術)
想要系統學習,你可以考察對比一下開設有IT專業的熱門學校,好的學校擁有根據當下企業需求自主研發課程的能,建議實地考察對比一下。
祝你學有所成,望採納。
『肆』 如何系統地學習前端
目前入門前端的人群分類
1、計算機相關專業出身系統走過計算機的理論基礎,比如計算機組成原理、操作系統原理、計算機網路、演算法數據結構、設計模式,至少用過兩門以上編程語言(強類型+弱類型)。
優點:理論、架構方面扎實,有整體計算機思維,內功不錯,外功學起來比較快。
缺點:部分人,前端相關細節技術不扎實,不過花時間能很快搞定。
2、非計算機出身自學(也包括計算機專業沒好好學的)理論基礎薄弱,後來因個人興趣或者職業需求,自學前端開發技能。
優點:自學能力比較強,能夠根據自己的興趣規劃學習內容。
缺點:部分人對前端沒有整體的學習框架 ,屬於東一片,西一片,不成體系,部分人計算機沒有整體思維,建議系統梳理下前端知識體系結構,該補的還是要補起來。
門前端時的一些困境
1、因一些基礎演算法、數據結構理論不扎實導致一些編程思維難於理解。比如 原型鏈,如果清楚 數據結構中鏈表結構,那麼這個東西不難理解,再比如 哈希值,懂得數據結構中哈希表,哈希值也就迎刃而解。
2、計算機體系結構、操作系統理論、網路理論不扎實導致到後期一些東西難於理解。比如有同學從前端學習入手,後來學習node開發 ,在 I/O ,進程、線程、IPC 、線程鎖方面有些概念就比較難於理解,而導致不能很好得使用node 的api 。
3、前端整體體系架構沒有做過深入思考。
導致用會用,但不知道為什麼用,用另外一個有什麼區別。
4、學習環境中無高手。
沒有高手能夠指導自己進入下一個層次。
5、有意識但是沒有行動我的網盤收集了一堆資料或者一堆視頻,然後就沒有然後了 。
如何系統學習前端
網站開發開發大致分為前端和後端,前端主要負責實現視覺和交互效果,以及與伺服器通信,完成業務邏輯。其核心價值在於對用戶體驗的追求。如果你現在是零基礎學員,大致可以按如下思路學習系統學習:
基礎部分
1、HTML + CSS 這部分學習,可以模仿一些網站做些頁面。在實踐中積累了一些經驗後,可以系統的讀一兩本書,推薦《Head First HTML 與 CSS 中文版》,這本書講的太細了,我沒能拿出耐心細讀。你可以根據情況斟酌。
2、Java 要學的內容實在很多,如果沒有其他編程語言的基礎的話,學起來可能要費些力,建議馬上看《Java語言精粹》,JS是一門很混亂的語言,這本書能夠幫助你區分哪些是語言的精華,哪些是糟粕,對於語言精華,應該深入學習。糟粕部分能看懂別人寫的代碼就行,自己就不用嘗試了。
進階部分
有了以上基礎,就可以進行一般的靜態網頁設計,不過對於復雜的頁面還需要進一步學習。
1、CSS。必看《精通CSS》,看完這本書你應該對:盒子模型,流動,Block,inline,層疊,樣式優先順序,等概念非常了解了。作為練習可以看下《CSS藝門之匠》這本書,它對標題,背景,圓角,導航條,table,表單等主題都有詳細的介紹。
2、Java。上面提到內容還不足以讓你勝任JS編程。在有了基礎之後,進一步學習內容包括:
a) 框架。
推薦jQuery,簡單易用,學習方法也很簡單,照著產品文檔做幾個頁面就行了,不用面面俱到,以後遇到問題查文檔就行了。框架可以幫你屏蔽瀏覽器的差異性,讓你能更專注與Web開發學習的精髓部分。補充:可以使用 Codecademy 學習 Java,jQuery,用戶體驗真的很好(感謝 TonyOuyang )。
b) Java 語言範式 。這個名字可能並不恰當,只是我找不到可以描述「面向對象」,「函數式」這個兩個概念的概念。Java不完全是一個面向對象的語言,它的很多設計理念都有函數編程語言的影子,甚至說如果你不用面向對象,完全可以把它理解成一門函數式編程語言。
Java的很多語言特性,都是因為他具有函數式語言的特點才存在的。這部分推薦先學習面向對象的基本理論,對封裝,繼承,多態等概念要理解,維基網路,網路會是你的幫手,另外推薦《Object Oriented Java》,應該有中文版。對與函數式編程我了解的也不系統,不好多說,可以自己網路一下。
c) Java 語言內部機制。必須弄清如下概念:JS 中變數的作用域,變數傳遞方式,函數的定義環境與執行環境,閉包,函數的四種調用方式(一般函數,對象的方法,apply,call),以及四種調用方式下,『this』指向的是誰。這部分內容你會在《Java語言精粹》中詳細了解。另外,你必須理解 json。
d) dom編程,這個Web前端工程師的核心技能之一。必讀《Dom編程藝術》,另外《高性能 Java》這本書中關於dom編程的部分講的也很好。
e) Ajax編程,這是另一核心技術。Ajax建議在網上查些資料,了解這個概念的來龍去脈,網路,維基網路上的內容就足夠了。真正編程是很容易的,如今幾乎所有框架都對Ajax有良好的封裝,編程並不復雜。
f) 了解瀏覽器差異性。這部分包括CSS和js兩部分,瀏覽器差異內容很多,建議在實踐中多多積累。另外對於瀏覽器的渲染模式,DOCTYPE等內容應該系統學習。
3、HTML5和CSS3 。HTML5規范已經於2014年10月28日發布了,移動端HTML5和CSS3已經得到了非常廣泛的使用,必知必會呀。
升級部分
有了以上知識,對於大多數小型網站,你應該已經可以寫出能夠工作的代碼了。但要想成為更專業的前端,你還需繼續努力。更高的要求大概還有四方面:1)易維護,2)可測試,3)高性能,4)低流量(移動端)。
易維護。對於頁面你該理解『樣式』,『數據』,『行為』三者分離,對應的當然就是CSS,HTML,js。對於js代碼,你最好了解設計模式,重構,MVC等內容。
可測性。
高性能。必讀《高性能Java》
低流量。移動端關注比較多。
額外補充部分
前端項目同樣面臨軟體生命周期的各個環節,首先是代碼管理,你必須學會使用Svn和Git。其次是代碼的構建,如今前端代碼構建已經不是簡單的壓縮一下了,需要進行依賴管理、模塊合並、各種編譯,比需要學會使用Grunt、Gulp等前端構建工具。
以上內容只是簡單說了前端學習的順序。對於前端開發,基本內容就這些了,可以根據自己的興趣愛好選擇性學習以下內容。
1、交互設計。大公司依然有專業人士搞這些,不過不懂交互的前端一定不是好前端。推薦《簡約至上》。
2、後端。
應該說前端工程師必須至少了解一門後端語言,不過如果愛好也可深入學習,入手難度比較低的應該是PHP了。這部分由可分為基於頁面,基於框架兩種。大型項目都是基於框架開發的,建議至少了解一個MVC框架,比如PHP的Ci、Yii、Yaf 等,好還框架的設計思想都大同小異。如今NodeJs在大公司已經得到普遍的使用,推薦大家使用在Node上使用Express框架做一些後端服務的開發。
3、Android和IOS開發。
時至今日,前端的工作領域已經非常廣泛,native的界面開發本質上也是前端開發,個大公司都面臨著Native環境和web環境頁面同時維護的問題,如果能夠在技術上得到統一,將會有巨大的價值。
如何才能快速入門前端
1、學習東西,自學是一種途徑,然而在自學的過程中,很多人處於不知道自己不知道的狀態。
2、另一種是跟著高手,開闊視野,達到知道自己不知道的境界,從而有方向,在短時期內進入到一個新的境界,節約時間成本。
『伍』 對於自學前端有什麼建議
自學方法:
1、作為一個初學者,你必須明確系統的學習方案,我建議一定有一個指導的人,全靠自己學,放棄的幾率非常大,在你對於web前端還沒有任何概念的時候,需要一個人領進門,之後就都靠自己鑽研,第一步就是確定web前端都需要哪些內容,並且在多少時間內學完,建議時間6個月保底。
2、視頻為主,書為輔。很多初學者在學習前端的時候非常喜歡去買書,但是最後的結果是什麼?看來看去什麼都不會寫,所以在這里給大家提醒,書可以看,但是是在建立於你已經對於某個知識點有了具體操作的執行後,在用書去鞏固概念,這樣更加利於你對於知識的理解。
3、對於學習技術來講,掌握一個學習方法是非常重要的,其實對於學習web前端來講,學習方法確實很多都是相通的,一旦學習方法不對,可能就會造成「方法不對,努力白費」。其實關於這方面還是很多的,我就簡單說個例子,有的人邊聽課邊跟著敲代碼,這樣就不對,聽課的時候就專心聽,做題的時候就專心做題,這都是過來人的經驗,一定要聽。根據每個人的不同,可能學習方法也會有所出路,找到適合你自己的學習法方法是學習的前提。
4、不建議自己一個人瞎學,在我了解學習編程的這些人來看,從零基礎開始學並且最後成功做這份工作的其實並沒有幾個,我覺得大部分原因就是因為他們都不了解web前端是干什麼的,學什麼的,就盲目的買書看,到處找視頻看,最後看著看著就放棄了,所以我建議初學者在沒有具體概念之前,還是找有經驗的人請教一下,聊過之後你就會知道web前端具體是干什麼的,該怎麼學,這是我個人的小建議,可以不採納。
自學路線:
第1階段:前端頁面重構(4周)
內容包含了:(PC端網站布局項目、HTML5+CSS3基礎項目、WebApp頁面布局項目)
第2階段:JavaScript高級程序設計(5周)
內容包含:(原生JavaScript交互功能開發項目、面向對象進階與ES5/ES6應用項目、JavaScript工具庫自主研發項目)
第3階段:PC端全棧項目開發(3周)
內容包含:(jQuery經典交互特效開發、HTTP協議、Ajax進階與PHP/JAVA開發項目、前端工程化與模塊化應用項目、PC端網站開發項目、PC端管理信息系統前端開發項目)
第4階段:移動端項目開發(6周)
內容包含:(Touch端項目、微信場景項目、應用Angular+Ionic開發WebApp項目、應用Vue.js開發WebApp項目、應用React.js開發WebApp項目)
第5階段:混合(Hybrid,ReactNative)開發(1周)
內容包含:(微信小程序開發、ReactNative、各類混合應用開發)
第6階段:NodeJS全棧開發(1周)
內容包括:(WebApp後端系統開發、一、NodeJS基礎與NodeJS核心模塊二、Express三、noSQL資料庫)
基礎書籍:
1、《Head First HTML與CSS(第2版)》,入門真的是經典書籍,手把手教學,豐富的案例讓你從 0 開始學前端。
2、《CSS權威指南(第三版)》,這本書作為 CSS 的經典著作,把原理講得非常的通透,除了 w3c 標准,算最權威的一本了,畢竟權威指南。
3、《CSS揭秘》神書,47 個 css 技巧讓你在面對各種 css 問題的時候游刃有餘。是 css 書籍中評分最高的了,css 進階必備。
4、《javascript語言精粹》,這本書可以在入門之前了解一下基本語法,以及在學習之前可以了解下 JS 裡面的精粹以及糟粕,雖然這本書很薄很薄,但是值得反復去讀的一本書。
5、《JavaScript DOM編程藝術(第2版)》,本書在簡潔明快地講述JavaScript和DOM的基本知識之後,通過幾個實例演示了專業水準的網頁開發技術,透徹闡述了平穩退化等一批至關重要的 JavaScript編程原則和最佳實踐。
6、《JavaScript權威指南》:犀牛書是每個FE都繞不過的一本書,可以先大致通讀幾遍,也可以把其當作工具書,時時翻閱。
望採納~
『陸』 前端開發好學嗎
WEB前端是最容易入門的編程崗位,初級前端技術很容易掌握,高級前端需要一步步學習和工作經驗的積累。web前端是一個做有關網頁的一個概述,是一個網頁view層的總得稱呼。前端開發,簡單來說,就是把平面效果圖轉換成網頁,把靜態轉換成動態。它的工作包括了:切圖、寫樣式、做滑鼠效果和圖片切換效果等。而優秀的前端開發可以保障實現這些效果的同時,即不能影響網站的打開速度、瀏覽器兼容性還有搜索引擎的收錄,還可以讓用戶體驗更加舒適,使網站在訪問中顯得更精細、更用心。訪客使用起來更簡便。
前端的崗位很多,要注意選擇自己的技術方向,需要精通流行的幾個框架開發。前端是入門簡單,深入難,所以要往高級前端發展還需要不斷學習新技術。
前端開發需要學習的技術
1 掌握基本web前端開發技術:HTML、CSS、JavaScript、DOM、BOM、AJAX等,而且要了解它們在不同瀏覽器上的兼容情況、渲染原理和存在的Bug
2 必須掌握網站性能優化、SEO和伺服器端開發技術的基礎知識
3 必須學會運用各種web前端開發與測試工具進行輔助開發
4 除了掌握技術層面的知識,還要掌握理論層面的知識,包括代碼的可維護性、組件的易用性、分層語義模板和瀏覽器分級支持等
5 未來web前端開發工程師還要研究HTML5、web視覺設計、網站配色、網站交互設計模式等相關技術
在互聯網行業,前端有WEB前端、HTML前端等,隨著互聯網技術發展,就業方向也有很多。web前端的就業方向有web架構師、web前端工程師、HTML前端開發工程師、網頁設計師等等。
HTML前端開發
與Web前端開發不同的是,使用HTML5不僅僅可以開發前端,還有網頁游戲,手機APP,使用瀏覽器進行3D渲染等一系列建立在HTML5標准與搭載其標准瀏覽器上的開發,而未來可能會有更多的功能分支並入HTML5標准。web前端工程師
這個方向是目前從事Web前端開發的主要就業方向
Web架構師
薪資普遍比較高,技術要求高,掌握多種技能,包括:後端技術、DBA、Platform等等,甚至包括網站優化SEO技術。
數據方向
數據研發這個是在Web開發的基礎上用數據附能,懂可視化的一定是有前端能力的,懂hadoop的一定java玩的溜,屬於Web開發的拓展方向。
大前端方向
比如阿里,在大量實踐rn和weex;由於公司內部安卓/ios式微,一定程度上,前端把ios和安卓收編了,統稱大前端(還有node)。
圖形學方向
前端自然是與圖形學有千絲萬縷的聯系,除了上面提到了可視化,還有相關3d引擎的開發工作。做這一行要求也非常高了,圖形學相關的演算法,3d引擎的開發,這都需要圖形學相關知識。
『柒』 怎麼學好web前端開發
入門
在我理解下的基礎知識,就是我們可以寫一些基本的樣式,並能對頁面的元素進行操作。舉例來說,就是我們用Spring和JSP寫了一個博客,然後我們可以用jQuery來對頁面進行一些簡單的操作,並可以調用一些API。因此,我們需要基本的HTML / CSS知識。只是要寫好CSS並不是一件簡單的事,這需要很多實戰經驗。隨後,我們還需要有JavaScript的經驗,要不怎麼做前端呢?
同時,我們還需要對DOM有一些基礎的了解,才能做一些基本的操作,如修改顏色等等。在這種情況下,最簡單的方案就是使用jQuery這樣的工具。不過,如果可以自己操作DOM是再好不過的了。
中級篇
中級篇就更有意思了,現在我們就需要對頁面進行更復雜的操作。Ajax和JSON這兩個技能是必須的,當我們要動態的改變頁面的元素時,我們就需要從遠程獲取最新的數據結果。並且我們也需要提交表單到伺服器,RESTful就是必須要學會的技能。未來我們還需要Fetch API,ReactiveX這些技能。
除此我們還需要掌握好HTML的語義化,像DIV / CSS這也會必須會的技能,我們應該還會使用模板引擎和SCSS / SASS。而這個層面來說,我們開始使用Node.js來完成前端的構建等等的一系列動作,這時候必須學會使用命令行這類工具。並且,在這時候我們已經開始構建單頁面應用了。
高級篇
JavaScript是一門易上手的語言,也充滿了相當多的糟粕的用法。幾年前人們使用CoffeeScript編成成JavaScript來編寫更好的前端代碼,現在人們有了ES6、TypeScript和WebPack來做這些事。盡管現在瀏覽器支持不完善,但是他們是未來。同樣的還有某些CSS3的特性,其對於某些瀏覽器來說也是不支持的。而這些都是基於語言本來說的,要寫好代碼,我們還需要掌握面向對象編程、函數式編程、MVC / MVVM / MV*這些概念。作為一合格的工程師,我們還需要把握好安全性(如跨域),做好 授權(如HTTP Basic、JWT等等)。
工程化
這個標題好像是放錯了,這部分的內容主要都是自動構建的內容。首先,我們需要有基本的構建工具,無論你是使用gulp、grunt,還是只使用npm,這都不重要。重要的是,你可以自動化的完成構建的工具,編譯、靜態代碼分析(JSLint、CSS Lint、TSLint)、對代碼質量進行分析(如Code Climate,可以幫你檢測出代碼中的Bad Smell)、運行代碼中的測試,並生成測試覆蓋率的報告等等。這一切都需要你有一個自動構建的工作流。
兼容性
雖然我們離兼容IE6的時代已越來越遠了,但是我們仍然有相當多的兼容性工作要做。基本的兼容性測試就是跨瀏覽器的測試,即Chrome,IE,Firefox,Safari等等。除此還有在不同的操作系統上對同一瀏覽器的測試,某些情況下可能表現不一致。如不同操作系統的字體大小,可能會導致一些細微的問題。
而隨著移動設備的流行,我們還需要考慮下不同Android版本下的瀏覽器內核的表現不致,有時候還要一下不成器的Windows Phone。除此,還有同一個瀏覽器的不同版本問題,常見於IE。。
前端特定
除了正常的編碼之外,前端還有一些比較有意思的東西,如CSS3和JavaScript動畫。使用Web字體,可惜這個不太適合漢字使用。還有Icon字體,畢竟這種字體是矢量的。不過Icon字體還有一些問題,如瀏覽器對其的抗鋸齒優化,還有一個痛是你得准備四種不同類型的字體文件。因此,產生了一種東西SVG Sprite,在以前這就是CSS Sprite,只是CSS Sprite不能縮放。最後,我們還需要掌握一些基本的圖形和圖表框架的使用。
軟體工程
這一點上和大部分語言的項目一樣,我們需要使用版本管理軟體,如git、svn,又或者是一些內部的工具。總之你肯定要有一個,而不是 2016.07.31.zip這種文件。然後,你還需要一些依賴管理工具,對於那些使用Webpack、Browserify來將代碼編寫成前端代碼的項目來說,npm還是挺好用的。不過就個人來說,對於傳統的項目來說我總覺得bower有些難用。我們還需要模塊化我們的源碼文件,才能使其他人更容易開始項目。
調試
作為一個工程師來說,調試是必備的技能。大部分瀏覽器都自帶有調試工具,他們都不錯——如果你使用過的話。在調試的過程中,直接用Console就可以輸出值、計算值等等。如果你的項目在構建的過程中有一些問題,你就需要debugger這一行代碼了。
在一些調用遠程API的項目里,我們還需要一些更復雜的工具,即抓包工具。在調試移動設備時,像Wireshark、Charles這一類的工具,就可以讓我們看到是否有一些異常的請求。當然在這個時候,還有一個不錯的工具就是像Chrome自帶的遠程設備調試。對於移動網站來說,還要有Responsive視圖。
測試
我遇到的很多前端工程師都是不寫測試的,於是我便把它單獨地抽了出現。對於一個前端項目來說,正常情況下,我們要有單元測試、功能測試,還有要一些UI測試來驗證頁面間是否可以跳轉。對於依賴於第三方服務的應用來說,還要有一個Mock的服務來方便我們測試。如果是前後端分離的項目,我們還需要有集成測試。
性能與優化
要對Web應用進行性能優化,可能不是一件容易的事,有時候我們還知道哪些地方可以優化。這時候人們就可以使用Yahoo的YSlow,或者我最喜歡的Google PageSpeed來檢測頁面的一些問題,如有沒有開啟GZip、有沒有壓縮、合並、Minify JS代碼等等。
我們還應該藉助於NetWork這一類的工具,查看頁面載入時,一些比較漫的資源文件,並對其進行優化。在一些情況下,我們還需要藉助如Chrome的Timline、Profiel等工具來查看可以優化的地方。
設計
前端工程師還需要具備基本的UI技能。多數情況下拿到的只是一張圖,如果是一個完整的頁面,我們就需要快速分割頁面布局。而依賴於不同的頁面布局,如響應式、網格、FlexBox布局也會有不同的設計。而有些時候,我們就需要自己規劃,製作一個基本的線框圖(Wireframe)等等。