1. 程式人生 > >Express.js實戰(1)—— 專案初始化

Express.js實戰(1)—— 專案初始化

想用Node.js玩Web,首先還是要征服Express這個最常見的Web框架,今天不討論那麼多理論,就單純的從做東西的角度入手,接觸Express。

介紹一本入門教材

Gyazo

《Pro Express.js》這是目前最新出版的講解Express的書籍,出版時間是在2014年,因為Express是目前比較熱的專案,更新的速度很快,很多兩三年前的書籍介紹的都是Express3,而現在已經是Express4了,一些操作已經變了很多。這本書是以Express4為基礎講解的。

書籍下載地址:link

先在GitHub上挖個坑

開源精神是一種追求,我們每天受益於開源社群,所以有一天我們自己有了程式碼,當然也要回饋給開源社群。所以,從現在開始,我要養成在GitHub上挖坑的習慣,今天,我挖了我GitHub上的第一個坑,給它起了個名字叫Apaper,意思就是像一張紙一樣簡潔、可塑,目標是做一個簡單的blog系統。

在GitHub上新建一個專案很簡單,如果關於GitHub的相關操作有疑問,可以參考這本書《Introducing GitHub》,書的內容很新也很全。如下,我的專案就建好了,最初始只有兩個檔案:LICENSE 和 README.md 。

Gyazo

關於LICENSE

關於開源軟體許可協議的選擇,阮一峰先生的一篇部落格裡寫的比較簡潔又易懂:《如何選擇開源許可證?》,下面圖片來自其部落格。

開源協議的選擇

我這裡選擇了最開放的MIT協議。

將專案Clone到本地

我的開發環境是Mac機,GitHub在Mac下有GUI的客戶端,操作起來比較方便。如有疑問,具體步驟《Introducing GitHub》

這本書上有詳細解釋。

初始化Express

目前我們的專案還只有兩個文字檔案,下面我們來做初始化Express的工作。

是否使用Yeoman

最開始,我嘗試用yeoman這種腳手架工具來初始化專案,不過感覺生成的專案裡有很多奇奇怪怪的檔案,不利於初學者理解,所以就放棄了,還是用Express自帶的生成器來初始化專案。

安裝express-generator

$ npm install express-generator -g

express-generator是Express4自帶的命令列工具,用來初始化Express專案,所以只需要將其全域性安裝,而不需要將整個Express全域性安裝,這和Express3不同,在Express3中,命令列整合在整個Express專案中,所以必須將Express3全域性安裝。

使用express命令初始化專案

$ express --git -f

express命令有一些可選引數,具體可以參看官方文件。這裡我們只用到了兩個。

–git :告知express生成.gitignore檔案,這個檔案定義了git需要忽略控制的檔案,通常node_mondules會被寫到此檔案裡。

-f :當目標資料夾不為空時,仍然強制執行。這裡加此選項的原因是因為我們clone下來的專案裡原本含有LICENSE 和 README.md兩個檔案。

安裝依賴

$ npm install

上一步我們指初始化了專案檔案,還沒有安裝依賴,所謂安裝依賴就是指根據package.json中定義的dependencies項,下載第三方包的過程,我們只要執行npm install,這些包就會被自動下載,並建立一個叫做node_modules的資料夾存放這些依賴。

專案結構

Gyazo

上圖就是初始化後生成的目錄結構,下一篇中重點介紹每個資料夾的作用。

Commit to master

最後我們把初始化的結果提交回GitHub的master分支。

Gyazo

到GitHub的主頁上可以看到,檔案發生了變化。

Gyazo