位置:首页 > Web开发 > Ruby On Rails > Ruby on Rails 是什么?

Ruby on Rails 是什么?

Ruby是什么 ?

我们在使用Rails之前,让我们知道一点点关于Ruby是Rails的基础。

Ruby 是成功的结合:

  • Smalltalk的概念上的优雅,
  • Python 易于使用和学习,
  • Perl 实用主义

Ruby 是

  • 一个高层次的编程语言
  • 像Perl,Python和Tcl/ TK 的解释。
  • 面向对象的,如:Smalltalk, Eiffel, Ada, Java.
  • 起源于日本,并迅速在美国和欧洲获得广泛关注。

为什么选择Ruby ?

Ruby在日本,美国和欧洲越来越受欢迎。以下是最大的因素:

  • 简单易学
  • 开源(非常宽松许可证)
  • 丰富的库
  • 很容易扩展
  • 真正的面向对象
  • 编码错误更少
  • 帮助社区

为什么不用 Ruby ?

  • 性能 - 虽然它匹敌Perl和Python。
  • 线程模型不使用原生线程。

Ruby代码示例:

下面是一个示例Ruby代码打印 "Hello Ruby"

   # The Hello Class
   class Hello
      def initialize( name )
         @name = name.capitalize
      end

      def salute
         puts "Hello #{@name}!"
      end
   end
   # Create a new object
   h = Hello.new("Ruby")
   # Output "Hello Ruby!"
   h.salute

嵌入式Ruby:

Ruby 提供了一个叫ERb(嵌入式的Ruby),由Seki Masatoshi编写的程序。ERB允许把一个HTML文件里面加入Ruby代码。ERb逐字逐句,然后在某一个点时,看到Ruby代码嵌入到文档中看到,它已经填补一个空白,它通过执行Ruby代码。

需要知道的只有两件事情,准备ERb的文件:

  • 如果想执行一些Ruby代码,请将它写在 <% 和 %>之间 

  • 如果想执行的代码打印出来的结果,作为输出的一部分,请将代码写入到 <%= 和 %>之间.

下面是一个例子,保存的代码在erbdemo.rb文件。请注意Ruby的文件将有扩展 .rb

<% page_title = "Demonstration of ERb" %>
<% salutation = "Dear programmer," %>
<html>
<head>
<title><%= page_title %></title>
</head>
<body>
<p><%= salutation %></p>
<p>This is an example of how ERb fills out a template.</p>
</body>
</html>

现在,运行程序,使用命令行实用程序 erb

c:\ruby\>erb erbdemo.rb

这将产生以下结果:

<html>
<head>
<title>Demonstration of ERb</title>
</head>
<body>
<p>Dear programmer,</p>
<p>This is an example  of how ERb fills out a template.</p>
</body>
</html>

Rails是什么?

  • 一个非常富有成效的web应用框架。
  • 由David Heinemeier Hansson用Ruby编写。
  • 可以开发一个Web应用程序比用一个典型的Java框架至少十倍的速度。
  • 一个开源Ruby框架,用于开发数据库支持的Web应用程序。
  • 代码和数据库架构的配置!
  • 无需编译阶段。

完整的堆栈框架

  • 包括一切需要创建一个数据库驱动的Web应用程序使用的模型 - 视图 - 控制器模式。
  • 作为一个全栈框架意味着所有图层建立无缝协同工作,更少的代码。
  • 需要更少的总的代码行比其他框架花在建立自己的XML配置文件。

约定优于配置

  • Rails 回避赞成配置文件的约定,反射和动态运行时扩展。应用程序代码和运行的数据库已经包含了Rails需要知道的一切!

Rails 优势:

Rails是包装功能,更有效率,许多基础上另一个具有以下特点。

元编程 : 其他框架使用大量的代码生成从零开始。使用元编程技术方案编写程序。 Ruby是的元编程最好的语言之一,Rails使用此功能。Rails的也采用代码生成,元编程繁重,但更依赖。

活动记录 : Rails 介绍活动记录的框架,这将对象保存到数据库。活动记录发现 Rails版本的数据库架构中的列,并自动附加到对象域使用元编程。

约定优于配置: 大多数Web开发框架.NET或Java,迫使写配置代码的页面。如果遵循建议的命名约定时,Rails不需要太多的配置。

脚手架: 经常在发展的早期阶段,以帮助应用程序快速创建临时代码,主要组成部分是如何一起工作。 Rails自动创建很多需要的脚手架。

内置测试: Rails创建简单的自动化测试,也可以扩展。Rails也提供支持所谓的安全带及装置,使更容易编写和运行测试用例的代码。 Ruby可以执行所有耙子实用程序的自动化测试。

三种环境: Rails 提供了三种默认的环境:开发,测试和生产。每个人的行为方式略有不同,更容易使整个软件开发周期。例如,Rails的测试数据库中创建一个新的副本,每个测试运行。