over 9 years ago
一些在Node.js環境中,使用express framework開發Evernote API,可以參考的背景知識
Node.js
Node.js is a platform written in JavaScript for easily building fast, scalable network applications.
可以把 Node.js 當成一個運行環境,同時也是javascript的函式庫
- non-blocking
- event-driven
參考資料
MVC
軟體工程中,把系統分成三個部份: Model、View、Controller的軟體架構
- 程式結構更為直覺(未使用framework=>SQL,CSS,HTML,PHP/JS/Python...混在一起)
- 後續程式修改、維護、擴充容易
- 專業人員可以透過自身的專長分組:
- Model: 資料庫、演算法、程式功能
- View: UI、UX
- Controller: 負責轉發請求,對請求進行處理
- 蒐集使用者於View中所輸入的資料,並決定由哪一支程式進行處理
- 接收Model傳回的資料,解析後傳給View呈現
- 蒐集使用者於View中所輸入的資料,並決定由哪一支程式進行處理
參考資料
Wiki - MVC
[軟體工程] MVC 架構
CI 練習- [帳號申請] 表單傳遞 form_open、method
CI 練習- [帳號申請] database 連結
express
express 其實不太算一個標準的MVC架構,因為Model部分不是由他提供。
以evernote-sdk-js為例,簡單分類的話:
View: views/index.jade
Controller: app.js(routes/index.js)
app.js 是 express最主要的設定檔:定義 express 使用的套件、template 系統、路徑設定與port。
如果全部的定義設定都寫在app.js裡面也很混亂,所以可以分開到其他的目錄文件中
(routes不屬於express模組,只是方便寫邏輯而已!)
參考資料
MVC路由控制 – Express 和 Django
node.js框架 express的mvc簡單解釋
CodeIgniter 2.0.X