現代前端開發

個人前端開發

web開發分爲先後,做爲一個後端工程師,或者是前端小白,前端的開發可能會很頭疼。
一路走來,坎坎坷坷,好在升級打怪仍是會遺留一些經驗的,記錄下現代前端開發的經驗。css

黑暗時代的前端開發

在這個時代,前端開發的流程多是這樣的:html

  • 寫各類html、css、js
  • 跑到各類前端模塊網站上手動下載各類庫
  • 一遍遍刷新瀏覽器,查看效果
  • 最終壓縮各類靜態文件

問題

  • html代碼重複,例如對於一個header和footer極有可能違反DRY,
    後期維護的時候絕對會是鎮痛
  • 沒法實時查看效果,須要手動刷新,就像某些蛋疼的java服務器,寫個api不能自動加載
    須要手動重啓,一個小時調不了幾個bug(Life is too short,please use python).
  • 壓縮這個事情不少人是不會去作的。
  • 代碼的模塊性不好,jquery確實靈活,不過期間長了以後代碼就會雜草叢生,尤爲是有
    別人接管你的代碼的時候,極有可能看不懂,而後重構,這也就是爲何前端會出現各類
    MVC框架的緣由

現代前端開發

這個時代已經不是刀耕火種的年代了。前端

首先說說MVC

MVC在後端已經出現N多年了,前端如今也有出現,可是前端是否是要用MVC這種
東西是有待商榷的,我的的體會是,若是你的項目很小,只有 你1~2個工程師
維護的時候,不須要用MVC框架,緣由很簡單,學習成本,時間是寶貴的,學習成本
絕對是硬傷,例如你選擇Backbone Angular的時候,陡峭的學習曲線不單單會影響
你本身,之後新人在用你項目的時候也會經歷這個痛苦。java

MVC的優勢,貌似這個就不用說了,一搜一大片。python

個人實踐

github上有不少優秀的開源項目,前端的工具也有不少,善用工具,善用優秀庫jquery

我brunch的一個腳手架項目,https://github.com/duoduo369/simple
check到不一樣分支使用,或者直接download releasegit

  • 使用coffee寫js,coffee會幫你避開js裏面的各類血坑,使用相似python的語法
  • 使用html、css模板引擎,可讓你少寫不少字母
    html我選擇的是jade, 可使用include的語法,幫你減小DRY的可能性
    css我選擇stylus
  • 使用構建工具,我使用的是brunch,npm,bower
    brunch解決黑暗時代一遍一遍手動刷新,以及自動引擎coffee,jade,編譯
    bower使得js、css庫的安裝方式變的異常簡單
    npm相似bower
  • bootstrap或者purecss(YUI),我的傾向於使用purecss(IE7+),IE6須要你本身手寫css
  • 若是不用MVC,對js又不是很懂的話可使用zarkfx,絕對節省你的開發時間,
    zarkfx可使用brunch + jade的 具體能夠參考我simple項目的br-coffee-jade分支
  • 若是使用MVC,backbone + chaplin or angular選一個吧,注意MVC裏面的限制,
    例如使用MVC後他們有本身的驅動機制,對DOM操做都有限制,尤爲是不能使用
    zarkfx,這點很是討厭

記住,總會有辦法解決重複的操做,提升你的開發效率的,使用工具,進行現代的web開發。github

實戰 backbone | chaplin | coffee tutotial實現web

ps: 這裏可能有你須要的東西 http://duoduo369.github.io/skill_issues/npm

相關文章
相關標籤/搜索