色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

停不下來的前端,自動化流程

  流程

  關于流程,是從項目啟動到發布的過程。在前端通常我們都做些什么?

  1. 切圖,即從設計稿中獲取需要的素材,并不是所有前端開發都被要求切圖,也不是所有前端開發都會切圖,但請享受學習新知識的過程吧。
  2. 創建模版(html、jade、haml)、腳本(Javascript、coffeescript)、樣式(css、less、sass、stylus)文件,搭建基礎的項目骨架。
  3. 文件(jade、coffeescript、less、sass…)編譯
  4. 執行測試用例
  5. 代碼檢測
  6. 移除調試代碼
  7. 靜態資源合并與優化
  8. 靜態資源通過hash計算指紋化
  9. 部署測試環境
  10. 灰度發布現網

  工具化

  每個流程中的過程單元,我們抽象為一個Task,即任務。把可重復規則的過程進行工具化,如把JavaScript代碼壓縮過程工具化,而UglifyJS是具體執行任務的工具,CSS代碼壓縮器CleanCSS是具體執行任務的工具。

  工具文化幾乎是大平臺互聯網公司共有的特質,我們無法確定是工具文化驅動了Google、Facebook這類互聯網公司的快速發展,還是快速發展的需要使其在內推廣工具文化,但可以明確的是工具文化必不可少。在Facebook第二位中國籍工程師王淮的書中也提到提到:

  當時招聘他進Facebook的總監黃易山,是對內部工具的最有力倡導者:

他極度建議,公司要把最好的人才放到工具開發那一塊,因為工具做好了,可以達到事半功倍的效果,所有人的效率都可以得到提高,而不僅僅是工程師。

  在騰訊,工具文化雖沒有被明確指出,但大平臺公司對工具化的堅持是一致的:凡是被不斷重復的過程,將其工具化,綁定到自動化流程之中。技術產品也需要Don’t make me think的方式來推廣最佳實踐??偠灾阂揽抗ぞ撸皇墙涷?。

  自動化流程

  任務工具化是自動化流程的基礎,我想你已經聽說過任務運行器Grunt。Grunt幫助開發者把任務單元建立連接,如代碼編譯Task執行完后執行檢測Task,檢測Task執行完后執行壓縮Task。雖然Grunt是基于Node.js平臺,但其定位是個通用任務管理器,通用往往意味著更高的學習與實施成本。專注于Web開發領域騰訊有Mod.js來實施前端自動化,通過Mod.js有效的簡化Web開發自動化流程實施成本。

  實施Mod.js

  Mod.js并不是簡單的任務運行器,其內置集成了Web前端開發常用的工具集,覆蓋了80%的前端使用場景,而另外的20%則可通過Mod.js的插件機制來擴展。

  相遇

  Mod.js:https://github.com/modjs/mod 可通過NPM來安裝最新的版本, 在你來到Node.js的編程世界時已同時附帶了NPM,當前Mod.js最新版本0. 4.x要求Node.js要求>= 0.8.0

$ npm install modjs -g

  -g 參數表示把Mod.js安裝到全局,如此mod命令將會在system path內,方便在任何一個目錄啟動Mod.js任務。

  相識

  Mod.js通過Modfile.js文件驅動任務執行,可以手動創建一個Modfile.js文件,也可以通過模版初始化一個Modfile.js文件:

$ mod init modfile

  Modfile.js是一個Plain Node Module, 通過 Runner 對象來描述任務的具體執行過程:

// 暴露Runner對象module.exports = {}

  如是異步配置,則可通過回調模式傳遞Runner對象:

module.exports = function(options, done){    setTimeout( function(){        // 回調Runner對象        var runner = {};        done(runner);    }, 1000)} 

it知識庫停不下來的前端,自動化流程,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 灵寿县| 仪征市| 桐城市| 肇东市| 水富县| 浏阳市| 托克托县| 上栗县| 阿克| 长葛市| 万盛区| 保山市| 桃园市| 乌兰浩特市| 会东县| 咸阳市| 隆德县| 泰州市| 平度市| 泰州市| 金门县| 山东省| 北京市| 平果县| 扬中市| 囊谦县| 渝中区| 特克斯县| 宜黄县| 司法| 临颍县| 瓮安县| 延吉市| 攀枝花市| 沙湾县| 芷江| 金川县| 三都| 花莲市| 镇沅| 潮安县|