昨晚我傾倒的Windows 7和格式化我的硬盤驅動器移植到一個基於Linux的操作系統,純粹是爲了我想開始與Node.js的用Node.js的工作
工作的原因,所以我已安裝的Node.js並做了一些測試的東西,HTTP服務器和插座等
我想這樣做的是建立一個緊密與MVC框架intergrated一個HTTP服務器,但我得到前開始學習如何在Node中高效構建所需的一切。
例如在PHP中作爲我的框架,我會創建一個引導加載系統來加載所有基類等,然後我會啓動我的事件系統準備開始附加回調。
我會繼續處理該請求等,直到生成的輸出,然後被髮送到將處理頭等等等等
但對於這個節點Sa全新的環境,並即時知道的最好的輸出處理程序在Node中構建系統的實踐。
的信息即時尋找更多的事情要做的設計結構,而不是應用程序的實際編碼,如何加載lib目錄下加載庫,等等等等
任何幫助表示讚賞。
到目前爲止,我的Web應用程序很好,我已經建立了我的應用程序相當傳統和一點程序。
什麼,我已經開始了創造像這樣的目錄結構:
<root>
startup.js
/public/
favicon.ico
/images/
/stylesheets/
/javascripts/
/system/
init.js
config.js
/libs/
/exceptions/
http.js
server.js
/application/
/views/
/_override/
/errors/
generic.view
/partials/
sidebar.voew
index.view
/controllers/
index.js
/models/
users.js
這個目錄結構最喜歡的是基於MVC的Web應用程序在那裏所以使用這種方法我感覺很舒服。
啓動文件什麼的節點作爲切入點,node startup &
執行的,看起來像這樣:
/*
* Header of t he file, Copyright etc
*/
var _Intitialize = require("./system/init.js");
//Displays the command line header, title, copyright etc
_Intitialize.DisplayCommandLineHeader();
//Check the enviroment, Permissions, Ports etc
_Intitialize.CheckEnviroment();
//Start the server and listen the port.
_Initialize.StartServer();
的init文件是主要的工作,它是什麼講述了系統的所有其他領域的運行,停止等
我有一個名爲serverhandler.js,
庫中的文件,這是init.js所需的,然後我創建一個服務器並將回調分配給ServerHandler.Listener
。然後,誰監聽請求,檢查文件是否存在於公共目錄中,如果存在,則會讀取塊併發回。
如果在公共中沒有找到文件,它會使用Route.Create(「/ path?params」)創建一個路徑。這會阻止uri中的3個元素,Controller,Method,Params,然後控制器文件被加載(如果存在)。
我已經採取了就扔的錯誤頁面,像這樣的方法:
if(!FileSystem.exists(RequiredPath))
{
throw new HTTPExceptions.FileNotFound();
}
希望這有助於在節點中的某些人開始。
+1傾倒的windows7 – macarthy 2011-03-03 12:03:38
是的即時通訊與Ubuntu非常滿意爲止:) – RobertPitt 2011-03-03 12:59:57
堅持你的win7在一個虛擬的盒子,容易死人 – macarthy 2011-03-03 14:44:46