当前位置:首页 » 编程语言 » railsphp

railsphp

发布时间: 2022-06-21 02:50:18

⑴ 关于Ruby

Ruby on Rails是一个用于编写网络应用程序的框架,它基于计算机软件语言Ruby,给程序开发人员提供强大的框架支持。Ruby on Rails包括两部分内容:Ruby语言和Rails框架。

什么是Ruby?
Ruby 语言是一种动态语言,它与python、Smalltalk和Perl这3种编程语言有些类似。Ruby语言起源于日本,它的研发者是日本人松本行弘(Matsumoto Yukihiro)。松本行弘在1993年开始着手Ruby语言的研发工作,他开发Ruby语言的初衷是为了提高编程的效率。 1995年12月Matz推出了Ruby的第一个版本Ruby 0.95。

Ruby语言的主要特点如下。
1.纯的面向对象语言
在Ruby中,一切皆是对象。下面举一个例子来更直观地说明Ruby语言的这一特点。
java中,求一个数的绝对值的代码如下。
int c = Math.abs(-20);
而在Ruby语言中,一切皆是对象,也就是说“-20”这个数也是一个对象,因此,求一个数绝对值的Ruby代码形式如下。
c = -20.abs
这样的代码编写方式是不是更形象一些呢?

2.解释型脚本语言
Ruby 语言是解释型脚本语言,它既有脚本语言强大的字符串处理能力和正则表达式,又不失解释型语言的动态性。一方面,在最初设计Ruby语言时,Ruby的研发者松本行弘考虑到文字处理方面的需要,他借鉴了Perl语言在文字处理方面的成功经验。另一方面,松本行弘将Ruby语言设定为一种解释型语言,Ruby 的动态性使得由Ruby语言编写的程序不需要事先编译即可直接运行,这为程序的调试带来了方便。同时,这一特点可以实现开发过程中的快速反馈。

3.其他特点
(1)动态载入。可以在运行时候重定义自己,类也可以在运行时继承或取消继承。
(2)自动内存管理机制。
(3)多精度整数。
(4)迭代器和闭包。
(5)开源项目。有大量活跃的社区支持Ruby语言。

什么是Rails?
虽然Ruby语言有很多优点,但是一直以来,其流行的范围也仅限于日本。直到2004年,Ruby才逐渐被世界上其他地区的人们所认识,那么是什么让Ruby语言走向世界的呢?是Rails。
Rails 框架首次提出是在2004年7月,它的研发者是26岁的丹麦人David Heinemeier Hansson。不同于已有复杂的Web 开发框架, Rails是一个更符合实际需要而且更高效的Web开发框架。Rails结合了php体系的优点(快速开发)和Java体系的优点(程序规整),因此, Rails在其提出后不长的时间里就受到了业内广泛的关注。

Rails框架主要有如下的6大特点。
1.全栈式的MVC框架
Rails是一个全栈式的MVC框架,换句话说,通过Rails可以实现MVC模式中的各个层次,并使它们无缝地协同运转起来。
在实际开发一个MVC模式的Web应用项目时,如果使用Java开发,需要用到Struts(Model层)、Hibernate (Controller 层)和Spring(View层)3个框架,而且需要额外整合3个框架开发出的内容。而使用Ruby语言开发相同的项目时,只需要用到Rails框架就可以完成。

2.约定优于配置
为了说明各个对象之间的关联关系,一般的Web应用开发框架往往采用写入XML配置文件的方法。这种方式虽然可以解决一些问题,但是却带来了管理上的混乱。
Rails 对此的态度是约定优于配置,这意味着在Rails中不会出现XML配置文件。Rails使用Web应用多年来积累的各种常见约定(更具体地说是命名规则)来代替XML配置文件,而在Rails内部的映射与发现机制根据这些约定可以实现对象之间的关联。在第1章中,通过Rails的映射与发现机制实现了数据表与Ruby对象之间的关联。

3.更少的代码
使用约定来代替XML配置文件说明Rails本身完成了大量的底层工作,这意味着使用更少的代码来实现应用程序是极有可能的。此外,代码量的缩减也减小了出现bug的可能性,降低了维护程序和升级程序的难度。

4.生成器
Rails 使用的实时映射技术和元编程技术,免去了开发人员在开发过程中编写大量样板文件代码的烦恼。在少数需要使用样板文件代码的时候,开发人员可以通过 Rails内建的生成器脚本实时创建,而不再是通过手工编写。Rails的这个特点可以使开发人员更专注于系统的逻辑结构,而不必为一些琐碎的细节所烦扰。

5.零周转时间
对已有的Web应用系统进行修改后,其一般需要经过配置、编译、发布、重新设置、测试等一系列步骤才能投入使用,这明显浪费了许多时间。而使用Rails开发Web应用系统,可以通过浏览器即时查看程序运行结果,从而节约了大量的时间。

6.支架系统
Rails的支架系统可以自动为任何相关的数据库表创建一套包含标准CRUD操作和前台视图的系统。通过支架系统,开发人员可以方便快捷地操纵数据库中的数据表。此外,Rails也允许开发人员使用自己设计的代码或视图来替换自动生成的代码和视图。

目前,Rails的最新版本是2005年12月13日发布的v1.0.0。从RoR正式提出到v1.0.0的发布,RoR在一年多的时间里受到了业内人士的广泛关注。RoR受到广泛关注主要有如下两个原因:首先,RoR的开发效率高(部署容易)、功能丰富(支持Ajax等流行应用),有消息称对于相同的 Web开发项目,使用RoR开发比使用Java体系架构开发快5~10倍;此外,令人不可思议的高性能是其受到关注的另一个重要原因,根据CSDN上转载的新闻称使用RoR开发出来的项目性能,比基于Struts+Hibernate+Spring的Java应用还要高15%~20%。
RoR 当前遇到的主要问题是使用RoR搭建的大型商业应用还很少,究其原因可以概括为两点:第一,从开发能力的角度,RoR是一个基于Ruby语言的轻型Web 开发框架,很多开发者对其是否适合大型应用难以把握。第二,本身使用RoR开发的大型商业应用较少,使得后来者持观望态度。
综合分析来看,RoR的发展前景还是很光明的。RoR在短时间内取得了巨大的成就,它打破了Web开发领域的固有观念,方便快捷的开发方式使其被广泛接受。而事实上,现在已有几家跨国公司正在使用RoR开发自己的Web应用程序,并且有多家大型公司在考虑使用RoR进行Web应用开发。

⑵ rails 页面的跳转方式有几种

方法一:使用meta标签
meta标签是html不可或缺的标签之一,它负责提供文档的元信息,其参数主要有:

① http-equiv: 与 文档中数据相关的HTTP文件首部
② content: 与命名HTTP首部相关的数据
③ name: 文档描述
④ url: 与元信息相联系的URL

我们定义属性http-equiv为refresh,打开此Web页时系统将根据content规定的值在一定时间内跳转到相应页面,content="
秒数;url=网址"就是定义了过多长时间跳转到指定的网址。以下meta标签告诉系统一秒钟后页面自动跳转:
<meta http-equiv="refresh" content="1;url=http://www.yourdomain.com">

以上代码需要加在HTTP文档首部中,介于<head>与</head>之间,通常,meta标签是紧跟在<head>之后。若需要有多个meta标签,它们可以各占一行。

此法通用于任何环境,包含静态的网站空间。

方法二:使用header函数

header函数是php内置函数中的HTTP相关函数之一,该函数送出HTTP协议标头到浏览器。使用它可以重定向URL,即令页面转向其他指定的网页。以下例子,执行后将自动打开黑马在线动力首页:

header("Location: http://www.gxblk.com/");


须注意,header函数只能用在页面代码中的<html>标签之前,亦即,HTTP首部尚未有其他任何标头(<head>)传
送给浏览器之前,而且,此前页面也不能print或echo任何内容。换句话说,在页面的<html>出现前,程序只单纯地处理header
事件。尽管有如此严格的要求,灵活地使用它,仍然可以达成页面的自动跳转功能,比如登录页面,通过判断用户提交的数据是否合法来决定页面跳转到何处。以下
给出一个简单的例子:

<?php /* 登录程序 - 文件名:login.php 程序作用 - 判断用户登录口令 */
if($_POST['Submit'])
{ session_start(); if($_POST['pws']=='123') { //若密码为 123
$_SESSION['passwd']='123'; //写入会话数据
header("Location:index.php"); //跳转到正常页面 }
else{ header("Location:login.php"); //跳转到登录页面 } } //表单代码略(也可以用纯html代码写表单,若如此,代码应放在程序之后 ?>
<?php
/* 检测会话数据 - 文件名:index.php 程序作用 - 检测会话数据中的密码是否为123,若不是,返回登录页面
*/ session_start(); if($_SESSION['passwd']!='123')
header("Location:login.php"); //其他代码(纯HTML代码应写在程序之后) ?>
此法显然只能用于支持php的空间环境。

方法三:使用JavaScript

JS非常灵活,利用它可以做出功能非常强大的程序脚本,这里仅举一个简单的页面自动跳转的JS例子。以下代码执行后浏览器将自动转到黑马在线动力网站,该代码可放在页面中的任何合法的位置:
<script language="javascript" type="text/javascript">
window.location.href("http://www.yourdomain.com");
</script>
此代码适用于任何Web环境。

⑶ Ruby 0n Rails 在网站开发上有什么优势相对于其他的语言php java等

1.扩展很方便,功能很齐全。开发的时候会有很多很多不同需求,但是这个东西已经有人写过了,你可以直接拿来就用,比如nokogiri,paginate等等。而且很方便获取,用gem install就可以。
2.开发效率快,因为你不用注重底层代码构建,提供的基础方法很多,php或者java还要手写。
3.数据库可移植性太强了。一份database.yml,可以对应多种数据库,前提是你安装了gem包。
4.方便移植带走。你装了很多gem,只要另外一台server上ruby版本和rails版本一样,你可以直接bundle install,把你的环境直接安装进来。如果php用到非标准库,你还用phpize编译,改php.ini,比较麻烦。
5.PHP和Java的学习代价略高于rails,当然你也可以直接使用现成的框架,比如thinkphp这种的。

⑷ 海外 php rails 服务器 合租 VPS 合租也行,哪里有

Linode 可以吧

三人合租,两人合租也有,
可以用的 45 一个月不贵吧
筘筘 601259096

⑸ 请问,用php,pyphon, ruby,哪一种语言开发网站的速度最快

通常,用自己越熟悉的语言,开发速度越快。

如果对几种语言的熟悉程度差不多,Ruby on Rails最快。

⑹ php 有没有 rails类似的框架

Akelos
Akelos PHP框架是一个类似于Ruby on Rails的框架,是基于MVC(Model View Controller)设计模式的web应用开发平台。由于Akelos对服务器唯一的要求就是支持PHP,与其他类似框架相比它的代码应用写得较少,因此它可以在大多数共享主机服务器上运行,它通过约定俗成代替配置来帮助开发人员减少代码的编写数量。Akelos可以支持URL的改写、数据库移植等内容,它的主要目的在于,帮助程序员开发基于数据库的多语言Web应用程序,依据MVC模式加快复杂的 web 应用程序的创建。
CakePHP Framework
CakePHP 无论对于初学者还是职业PHP开发者都是很好的选择。它基于与Ruby on Rails同样的原则而设计,它十分注重快速开发——这使得它成为一个非常好的用于RAD的开发框架。它快速增长的支持系统,简洁性和可测量性使得 CakePHP成为今天可用的最受欢迎的PHP开发框架之一。
CodeIgniter PHP Framework
CodeIgniter 是一套小巧但功能强大的PHP 框架,做为一个简单而"优雅"的工具包,它是一套专为PHP 开发者建立功能完善的Web 应用程序。如果你是一个使用虚拟主机,并且为客户所要求的期限而烦恼的开发人员,如果你已经厌倦那些难而且效率不高的框架,你一定会喜欢CodeIgniter。
Fusebox Framework
Fusebox是构建ColdFusion和PHP Web 应用程序最流行的框架。它的目的是使应用程序更易于创建和维护,并使团队开发更加容易。
Php On Trax
Php On Trax是一个采用MVC架构,适用于PHP5与PHP4环境,基于Ruby on Rails框架思想的web开发与持久层框架。它包含了创建依赖于数据库的Web系统所需要做的所有事件,是Ruby on Rails框架的一个真正PHP克隆。
HPDevShell Framework
PHPDevShell是一款开源(GNU/LGPL)的快速应用开发框架,用于开发不含 Javascript的纯PHP。它有一个完整的GUI管理员后台界面。其主要目标在于开发插件一类的基于管理的应用,其中速度、安全、稳定性及弹性是最优先考虑的重点。其设计形成了一个简单的学习曲线,PHP开发者无需学习复杂的新术语。
OpenBiz PHP Framework
Openbiz Framework的设计目标是节省构建复杂应用系统的开发投入和缩短开发时间。借助于Openbiz的帮助,应用程序的开发将基于完善的MVC架构建立,以Metadata驱动为核心描述业务逻辑,支持多种ORM逻辑,并且有Openbiz Appbuilder作为图形化集成开发环境的快速开发平台。
PRADO Component-based Framework
PRADO是在PHP5环境下的一个基于事件驱动和基于组件的WEB应用研发框架。PRADO专注于建立一个代码重用和事件驱动的编程标准。如果你曾经用Delphi或者Visual Basic等这些RAD开发工具来开发Windows程序的话,那么你会发现使用PRADO来开发WEB应用是非常类似的,你可以很快就掌握PRADO来进行WEB应用的开发。
QPHP (Quick PHP) Framework
QuickPHP是用于测试和调试PHP脚本的独立Web服务器。QuickPHP不需要安装(只解压并运行),已包括PHP5,可以用来测试基本的PHP脚本。该QuickPHP服务器支持GET,POST和HEAD请求,并提供最低配置选项,只需选择你的PHP脚本的根目录,然后可以在浏览器中访问了。
Seagull PHP Framework
Seagull是个纯OOP(面向对象程序设计)框架,可用于创建web,command line(命令行)和GUI的应用程序。它采用了BSD授权,让PHP开发者可以更容易地整合并管理代码源,更快速地建立复杂的应用程序。

⑺ php,python,ruby,perl的优缺点

perl基本已经被淘汰,在各方面几乎已经没有优势,虽然说还正在开发perl6啊什么的,不过基本上大势已去。虽然在部分场合还有应用,不过大部分都只是因为历史遗留问题而已,也就是说一些老软件用这个,部分地方还因为各种原因没去替换这些老软件而已。

从web的角度来看,这四个语言都做过web开发,不过后来php代替了perl。而现在作为python的django构架和ruby的Ruby On Rails构架正在逐渐代替php。因为php也有其天生的缺憾,例如对于模板分离式编程不是天生的支持导致的。所谓模板分离也就是由网页制作和美工人员写纯网页,又程序员写纯程序,然后二者结合。在这个模式之前就是典型的php默认,代码和页面都是一个php文件并未分离。

不过php在现在还是有其顽强的生命力的,这也是有其历史遗留原因的,毕竟太多大型网站、大型项目都使用php,一时之间改变还很难。

排除web构架以外,python和ruby都差不多的,其对各种库的支持也都相似。总体来说现在python的普及率要高一点,可能因为一种先入为主的优势吧。高就高在几乎所有linux发行版,OSX系统都自带python,但是ruby则不然。

python在某些非常轻量级的桌面任务上可能也有优势,因为自带一个gui库,tinkter,不过这一点优势应该很小,因为毕竟太轻量级了,就是说太简单了,用处一般。

从语法的角度来说,未来肯定还是python、ruby这种开发更简单的语言的天下,php还保留着c/c++遗留下来的各种语法诟病,要是只论纯开发速度肯定不如python、ruby的强,这里主要说的web,因为php开发桌面程序那还是随便玩玩的,虽然有吧。

⑻ 在网上下载的PHP文件 用什么软件能打开

如果你是学编程,用editplus,ultraedit,zend
studio,red
rails等等编程软件都可以打开.
如果你从网页打开链接下载了一个后缀为php的文件,吧文件名后缀改为.html用浏览器打开看看就知道了

⑼ 用什么语言可以实现前台与用户更友好的交互 ruby,PHP,perl,python都能做什么都有什么优点

你的这个问题说明你还不太懂这些东西,你所说那那些比如用户点击一个按钮的同时不用等待网页的响应,现在比较流行的做法是ajax,你上面所说的四种语言都可以用来做网站的后台,其中ruby和python是种不错的脚本语言,他们都开发出来了一些优秀的框架,比如ruby现在很火的rails框架,可以快速的建立网站,你可以看一下使用rails你可以5min就能建立一个博客网站。php也可以做后台,但是比较繁琐,随着计算机硬件的提升,php这种繁琐的语言我个人觉得会被ruby和python代替,应为这两者对开发者来说很容易,就像ruby的作者创立这门语言的初衷一样:让程序员快乐的编程。

热点内容
c语言取随机数 发布:2025-02-06 02:46:57 浏览:863
uc缓存的视频卡住 发布:2025-02-06 02:17:05 浏览:144
解压同学介绍 发布:2025-02-06 02:13:10 浏览:776
icsftp 发布:2025-02-06 02:12:59 浏览:325
ftp跨域上传文件 发布:2025-02-06 02:09:22 浏览:822
非递归全排列算法 发布:2025-02-06 02:06:45 浏览:551
vs反编译dll 发布:2025-02-06 02:06:00 浏览:584
ubuntu设置ftp权限 发布:2025-02-06 01:54:07 浏览:599
奇瑞5哪个配置值得买 发布:2025-02-06 01:51:56 浏览:552
黑鲨手机哪里看安卓版本 发布:2025-02-06 01:36:04 浏览:803