初学Ruby

来源:互联网 发布:诹访内晶子 知乎 编辑:程序博客网 时间:2024/05/22 19:28

                 初学Ruby

First,Install ruby:

ForWindows:老师打包给了我一个.exe文件,即RubyMine,我直接安装,但是我每次运行代码,就显示没有特定的SDKSoftware Devlopement kit)报错,最后百度,下载了安装包,算是搞定。

For Linux: 听到老师说,ruby语言优点之一就是它与Linux绑定,并且Linux门槛高,前途自然光明,因此我就想在Linux下玩ruby,因此按照教程在Linux下安装了程序,Run了几个代码。

 

 

Secondly: 什么是MVC,什么是rails?什么事ruby on rails? 

MVC就是Model(模型),View(视图),Cntroller(控制器)

 

 

控制器:监控整个应用程序

模型:应用程序的一项任务

视图:从动作接受数据,并以网页的形式显示数据

Rails就是一种MVC,显然,对于rail也有对应的三种结构。

下面我们从一个简单的实例代码来理解ruby on rails

 

 

 

the first programming code------hello world!

 

①创建模型model:在 Bash shell下使用rails创建框架模型:

-bash -2.0.5b$ mkdir rubydev

-bash -2.0.5b$ cd rubydev

-bash -2.0.5b$ 

为了用rails创建hello world 程序,需要在命令行中输入rails,并在后面加上需要创建的应用程序的名字-----helloworldRails会自动创建很多文件。

代码如:c:\rubydev>rails hello

       Create......

②创建控制器(controller:

首先切换到Rails自动创建的helloworld 根目录下,使用ruby命令ruby script/generate controller App来创建一个名为App的控制器,这样控制器创建好了。打开扩展名为.rb的文件,显示内容如下所示:

Class AppController <ApplicationController

def  greeting

end

End

到这里我们就已经创建了一个带有控制器的web应用,控制器包含了一个动作,这个动作可以被控制器调用执行。控制器决定了应用程序的流程,每个程序包含了一个或多个动作,而动作时浏览器对某个输入做出的响应。控制器包含了web应用程序的所有动作,每个动作都有自己的特定代码。

下面要把数据和动作显示出来,在rails中,显示是由视图(View)来处理的。

③用视图(View)来处理显示数据和动作:

在本例中,不需要从动作向视图模板传递数据;视图只是简单的显示一个含有问候语的页面:greeting.rhtml 内容如下:

<html>

   <head>

       <title>Ruby on Rails</title>

<head>

<body>

<h1>Hello Word!<h1>

</body>

</html>

到这里,完工!可以用Rails自带的web服务器输入网址:http://localhost:3000/app/greeting,就会得到显示问候语的显示页面。

Finally:小结感悟

Rails强制将应用按照MVC结构分为三部分,你只需要按照划分,分别开发ModelView以及Controller这三个功能模块,然后它们会在执行时,自动相互配合。让人欣慰的是,这三部分的协调工作,不需要任何配置,是由Rails自动整合起来的。

 

这是Rails的哲学,惯例胜于配置。

 

 

关于Ruby的语法:

RubyJava一样都是面向对象(OOP)的编程语言,在他们的世界,任何事物都可以划分为“类”和对象,这和C语言过程性语言有着很大的不同,个人觉得,学完Java再接触Ruby,觉得理解上容易多了。

当然,Ruby也有很多与Java不同的地方,觉得简单了不少。

例如:

输出Hello from RubyRuby代码:

puts Hello from Ruby. 

#(注释)puts Ruby的内建的方法,含义是“输#  出字符串”,可以看出,与Java不同,Rubu语句并不易分号结束,它不需要任何结束标示符,如果一条语句写不下去,就可以行末尾加上反斜杠“\

例如:puts\

      Hello from Ruby. 

另外,Ruby在处理字符串,变量的声明,使用语句的形式都和Java相差很多,但是数据结构(数组,列表,栈,队列)和面向对象(OOP)核心还是息息相通的,要实实在在的掌握Ruby,要自己去多加练习了,多敲代码,早日写出自己的Web应用!

 

 

0 0
原创粉丝点击