## 介紹
前端開發發展很快。一個好的跡象是新技術出現的速度。[Webpack](https://webpack.github.io/)和[React](https://facebook.github.io/react/)是最近的焦點。兩者結合起來,這些工具能讓你開迅速的開發各種各樣的web應用。更重要的是,學習這些工具能擴展你的視野。這就是本書的目的。
## Webpack是什么?
Web瀏覽器被設計來裝載HTMl,JavaScript和CSS。最簡單的方式開發Web是直接寫瀏覽器能理解的文件。問題是這個方法到最后會變得很笨重。尤其是你再編寫Web應用程序時。
這里有很多方式解決這個問題。你可以開始分離你的JavaScript和CSS文件。你可以通過`script`標簽加載依賴。盡管這會好一些,但任然會有一些小問題。
如果你需要使用一些技術編譯成這些目標格式,你將引入預處理過程,任務運行,像Grunt和Gulp,可以上你實現這些,但盡管如此,你還是需要親手寫一些配置。
### Webpack怎么樣改變形式?
Webpack采取了另外一條路。它允許你把你的項目當成一個依賴圖。你在你的項目里可以有一個*index.js*文件,這個文件通過標準的`import`語句拉取依賴到項目中來。你可以采用相同的方式引入你的樣式文件或者其他資源。
Webpack通過你特定的配置幫你完成所有的預處理,并給你打包好的文件。這個方法相當的強大,但是學習會有些困難。然而,一旦你開始明白WebpacK如何工作,它將成為一個不可或缺的工具。這本書就是陪伴你度過最初的學習曲線。
## React是什么?
Facebook出品的React,是一個Javascript庫,一個基于組件的視圖抽象。一個組件可能是一個表單文本框,一個按鈕,或者其他任何在你界面里的一個元素。這里提供一個有趣的對比,在早期的實現中,react并不是設計來綁定到DOM上的。比如你可以使用它實現一個手機應用。
### React只是全部的一部分
考慮到React僅僅關注視圖,你需要使用其他庫來補足你缺失的功能。這里也提供了一個和框架有趣的對比。框架實現了你能開箱即用的很多東西。這兩種方法都有優缺點。在本書中,我們會傾向于討論庫的實現。
React引入的思想已經影響了框架的發展。最重要的是它幫助我們理解基于什么樣思想的組件才適合Web應用。
## 你將學到什么?

這本書教你構建一個[Kanban](https://en.wikipedia.org/wiki/Kanban)應用。除此之外,Web開發理論方面的知識將會討論。完成這個項目對于怎么實現你自己的項目會很有啟發。通過這個過程,你將明白當前的庫為什么這么有用,也將證明你將有更好的技術選擇。