什么是Yeoman?
現(xiàn)代 Web App 的腳手架工具
Yeoman 的作用
在 Web 項目的立項階段,使用 Yeoman 來生成項目的文件,代碼結構。Yeoman 自動將最佳實踐和工具整合進來,大大加速和方便了我們后續(xù)開發(fā)。
Yeoman是Google的團隊和外部貢獻者團隊合作開發(fā)的,他的目標是通過Grunt(一個用于開發(fā)任務自動化的命令行工具)和Bower(一個HTML、CSS、Javascript和圖片等前端資源的包管理器)的包裝為開發(fā)者創(chuàng)建一個易用的工作流。
Yeoman的目的不僅是要為新項目建立工作流,同時還是為了解決前端開發(fā)所面臨的諸多嚴重問題,例如零散的依賴關系。
Yeoman主要有三部分組成:yo(腳手架工具)、grunt(構建工具)、bower(包管理器)。這三個工具是分別獨立開發(fā)的,但是需要配合使用,來實現(xiàn)我們高效的工作流模式。
下面這幅圖很形象的表明了他們三者之間的協(xié)作關系。
YOMAN的特性
閃電般的初始化:項目開始階段,可以基于現(xiàn)有的模板框架(例如:HTML5 Bolierplate、Twitter Bootstrap)進行項目初始化的快速構建。
了不起的構建流程:不僅僅包括JS、CSS代碼的壓縮、合并,還可以對圖片和HTML文件進行優(yōu)化,同時對CoffeScript和Compass的文件進行編譯。
自動編譯CoffeScript和Compass:通過LiveReload進程可以對源文件發(fā)生的改動自動編譯,完成后刷新瀏覽器。
自動Lint代碼:對于JS代碼會自動進行JSLint測試,確保代碼符合最佳編程實踐。
內置的預覽服務器:不再需要自己配置服務器了,使用內置的就可以快速預覽。
驚人的圖片優(yōu)化:通過使用OptiPNG和JPEGTran來優(yōu)化圖片,減少下載損耗。
殺手級包管理:通過bower search jQuery,可以快速安裝和更新相關的文件,不再需要打開瀏覽器自己搜索了。
PhantomJS單元測試:可以非常方便的使用PhantomJS進行單元測試,一切在項目初始的時候都準備好了。
Yeoman 的使用
安裝 angular
yo angular learnangular(項目名)