Node.js和Geddy初學(xué)者指南(第一部分) |
發(fā)布時(shí)間: 2012/5/25 19:39:16 |
在這個(gè)包含3個(gè)部分的教程中,我們將幫助大家從頭了解Node.js和Geddy,并且開(kāi)發(fā)一個(gè)to-do list的管理程序。我們將介紹如何安裝Node.js到windows和OS X,及其Geddy,并且生成我們第一個(gè)應(yīng)用。 Node是什么? 如果你開(kāi)發(fā)了web應(yīng)用很多年的話,你可能已經(jīng)知道了Node.js。如果你不知道的話,這里我們將簡(jiǎn)單的說(shuō)明一下: “Node.js是一個(gè)基于Chrome javascript runtime的平臺(tái),可以很簡(jiǎn)單的創(chuàng)建基于服務(wù)器端的javascript應(yīng)用。Node.js使用事件驅(qū)動(dòng),非阻塞的I/O模型,特別適合開(kāi)發(fā)實(shí)時(shí)的應(yīng)用。” Geddy是什么? Geddy是一個(gè)非常簡(jiǎn)單的基于Node.js的結(jié)構(gòu)化MVC框架。你可以使用它快速的構(gòu)建web應(yīng)用和JSON API。如果你使用過(guò)Ruby on Rails或者PHP的codelgniter,那么Geddy和他們非常類(lèi)似。它擁有一個(gè)RESTful的router,模板渲染,控制器和模型。非常適合快速開(kāi)發(fā)! 安裝Node.js Node.js可以在windows,OS X和Linux上運(yùn)行。我們將介紹如何在windows和OS X上安裝配置。如果你使用Linux,那么你需要自己查看文檔配置。 首先我們需要訪問(wèn)Node.js的主站:http://nodejs.org,然后點(diǎn)擊下載。找到你的OS對(duì)應(yīng)的installer的link。如果你使用windows,你可能需要重啟你的電腦來(lái)添加‘node’命令到你的環(huán)境變量Path中。 現(xiàn)在你應(yīng)該已經(jīng)安裝了Node和安裝包管理器,即npm(Node package Manager)。 使用npm來(lái)安裝Geddy Node擁有非常不錯(cuò)的安裝包管理器 。叫做npm,截止我們這篇文章,包含了8000多個(gè)安裝包。你可以查看http://toolbox.no.de來(lái)尋找你喜歡的安裝。對(duì)于這個(gè)教程來(lái)說(shuō),我們使用npm來(lái)安裝Geddy(我們框架)和Jake(Geddy用戶(hù)的編譯工具)。 Jake是Node.js的javascript編譯工具。 1.打開(kāi)你的終端,例如windows上的command.exe 2.輸入 npm install -g geddy jake Ok,搞定了,現(xiàn)在你已經(jīng)安裝Geddy了,接下來(lái)我們看看如何生成我們第一個(gè)應(yīng)用。 生成一個(gè)Geddy應(yīng)用 Geddy使用一個(gè)全局執(zhí)行方式來(lái)生成apps和資源,并且啟動(dòng)你的app服務(wù)器。 這都將使用命令行,因此,打開(kāi)你的終端。在生成應(yīng)用前,我們需要先‘cd’到一個(gè)目錄來(lái)保存應(yīng)用。例如: cd path/gbin1/code 下一步,我們使用geddy來(lái)生成我們的應(yīng)用結(jié)構(gòu)。我們創(chuàng)建to-do 應(yīng)用,例如,這里我們起名 todo-app: geddy app todo_app 搞定!那么我們都生成了什么呢? 生成的應(yīng)用的概況 如果你查看了創(chuàng)建的todo_app,你將看到生成了如下代碼,結(jié)構(gòu)如下: 1.app/ 1.1controllers/ 1.2models/ 1.3views/ 2.config/ 3.lib/ 4.log/ 5.node_modules/ 6.public/ 我們來(lái)解釋一下: app:這是大多數(shù)文件生成的地方。你的應(yīng)用邏輯基本將會(huì)包含在這三個(gè)目錄之一。 app/controller:所有你的應(yīng)用的控制器(controller)。你將可能看到這里倆個(gè)控制文件application.js(所有的控制器都繼承這個(gè))和main.js(你的route綁定到app/views/main/index.html.ejs模板的控制器)。 app/models:用來(lái)保存model的地方 - 現(xiàn)在這里沒(méi)有,以后我們會(huì)添加一個(gè)。 app/views:所有的app的模板位置。你可以看到application.html.ejs文件在layouts目錄-這個(gè)文件是你的應(yīng)用的主模板,所有的前端封裝代碼都通過(guò)這里。你應(yīng)該同時(shí)包含一個(gè)index.html.ejs文件在main目錄。這是當(dāng)你點(diǎn)擊/route后主控制器的index活動(dòng)用來(lái)渲染的文件。 config:配置文件所在位置。你應(yīng)該有development.js,production.js,environment.js,router.js和init.js文件。其中init.js文件是在請(qǐng)求到達(dá)之前應(yīng)用開(kāi)始啟動(dòng)時(shí)調(diào)用。通常用來(lái)添加app類(lèi)型全局的功能或者資源屬性。route.js用來(lái)創(chuàng)建應(yīng)用URL對(duì)應(yīng)的活動(dòng)action。對(duì)于全局設(shè)定,你需要編輯environment.js。如果是產(chǎn)品和開(kāi)發(fā)設(shè)定,你編輯對(duì)應(yīng)的config文件。 lib:這里放置你需要的任何文件 log:所有的log文件都在這里。當(dāng)你啟動(dòng)你的應(yīng)用后,你應(yīng)該有一個(gè)acces.log,stdout.log和stderr.log文件。 node_modules:這是所有安裝的module位置?梢岳斫夥胖闷渌说拇a的目錄。 public: 最后,這是所有你的前端相關(guān)東西放置的目錄。所有你的CSS,圖片和前端js。你會(huì)看到Twitter的boostrap和jQuery預(yù)先安裝了。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |