在这个包含3个部分的教程中,我们将帮助大家从头了解Node.js和Geddy,并且开发一个to-do list的管理程序。我们将介绍如何安装Node.js到windows和OS X,及其Geddy,并且生成我们第一个应用。
Node是什么?
如果你开发了web应用很多年的话,你可能已经知道了Node.js。如果你不知道的话,这里我们将简单的说明一下:
“Node.js是一个基于Chrome javascript runtime的平台,可以很简单的创建基于服务器端的javascript应用。Node.js使用事件驱动,非阻塞的I/O模型,特别适合开发实时的应用。”
Geddy是什么?
Geddy是一个非常简单的基于Node.js的结构化MVC框架。你可以使用它快速的构建web应用和JSON API。如果你使用过Ruby on Rails或者PHP的codelgniter,那么Geddy和他们非常类似。它拥有一个RESTful的router,模板渲染,控制器和模型。非常适合快速开发!
安装Node.js
Node.js可以在windows,OS X和Linux上运行。我们将介绍如何在windows和OS X上安装配置。如果你使用Linux,那么你需要自己查看文档配置。
首先我们需要访问Node.js的主站:http://nodejs.org,然后点击下载。找到你的OS对应的installer的link。如果你使用windows,你可能需要重启你的电脑来添加‘node’命令到你的环境变量Path中。
现在你应该已经安装了Node和安装包管理器,即npm(Node package Manager)。
使用npm来安装Geddy
Node拥有非常不错的安装包管理器 。叫做npm,截止我们这篇文章,包含了8000多个安装包。你可以查看http://toolbox.no.de来寻找你喜欢的安装。对于这个教程来说,我们使用npm来安装Geddy(我们框架)和Jake(Geddy用户的编译工具)。
Jake是Node.js的javascript编译工具。
1.打开你的终端,例如windows上的command.exe
2.输入 npm install -g geddy jake
Ok,搞定了,现在你已经安装Geddy了,接下来我们看看如何生成我们第一个应用。
生成一个Geddy应用
Geddy使用一个全局执行方式来生成apps和资源,并且启动你的app服务器。 这都将使用命令行,因此,打开你的终端。在生成应用前,我们需要先‘cd’到一个目录来保存应用。例如:
cd path/gbin1/code
下一步,我们使用geddy来生成我们的应用结构。我们创建to-do 应用,例如,这里我们起名 todo-app:
geddy app todo_app
搞定!那么我们都生成了什么呢?
生成的应用的概况
如果你查看了创建的todo_app,你将看到生成了如下代码,结构如下:
1.app/
1.1controllers/
1.2models/
1.3views/
2.config/
3.lib/
4.log/
5.node_modules/
6.public/
我们来解释一下:
app:这是大多数文件生成的地方。你的应用逻辑基本将会包含在这三个目录之一。
app/controller:所有你的应用的控制器(controller)。你将可能看到这里俩个控制文件application.js(所有的控制器都继承这个)和main.js(你的route绑定到app/views/main/index.html.ejs模板的控制器)。
app/models:用来保存model的地方 - 现在这里没有,以后我们会添加一个。
app/views:所有的app的模板位置。你可以看到application.html.ejs文件在layouts目录-这个文件是你的应用的主模板,所有的前端封装代码都通过这里。你应该同时包含一个index.html.ejs文件在main目录。这是当你点击/route后主控制器的index活动用来渲染的文件。
config:配置文件所在位置。你应该有development.js,production.js,environment.js,router.js和init.js文件。其中init.js文件是在请求到达之前应用开始启动时调用。通常用来添加app类型全局的功能或者资源属性。route.js用来创建应用URL对应的活动action。对于全局设定,你需要编辑environment.js。如果是产品和开发设定,你编辑对应的config文件。
lib:这里放置你需要的任何文件
log:所有的log文件都在这里。当你启动你的应用后,你应该有一个acces.log,stdout.log和stderr.log文件。
node_modules:这是所有安装的module位置。可以理解放置其它人的代码的目录。
public: 最后,这是所有你的前端相关东西放置的目录。所有你的CSS,图片和前端js。你会看到Twitter的boostrap和jQuery预先安装了。
启动你的New Geddy应用
启动命令如下:
cd ~/path/to/code/todo_appgeddy
你将看到如下输出内容:
现在服务器已经启动了。输入http://localhost:4000:在浏览器中查看如下应用:
“因为Geddy使用开箱(out of the box)的Bootstrap ,所以支持响应式的布局(responsive layout),所以你开发的应用可以直接在移动浏览器中显示。你可以在桌面浏览器中改变浏览器大小来查看”
下一部分
这一部分我们介绍了node.js和geddy,下一个部分我们将生成todo资源,并且介绍开发细节。如果你有问题,请给我们留言,谢谢!