什么是ROR?

机器人在果园内行巡检仿真(2D雷达、realsense相机) DiffBot是一种具有两个轮子的自主差动驱动机器人。它的主要处理单元是一个运行Ubuntu Mate 20.04和ROS 1 (ROS Noetic)中间件的Raspberry pi4b。该存储库包含ROS驱动包、真实机器人的ROS控制硬件接口和模拟DiffBot的配置。修改配置文件orchard_world.launch。 阅读详情
      RoR是Ruby on Rails的缩写。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应用开发。
 
深入详细分析Skyworks 78113 PAMiD射频方案图 是一种高集成度的射频前端模块,它结合了功率放大器(PA)、双工器(Duplexer)、滤波器和开关等多个组件,主要用于4G LTE移动通信系统中的射频前端链路。是一款典型的PAMiD模块,通过将多个频段的发射(TX)和接收(RX)路径集成在一个模块中,大大减少了传统射频设计中的分立器件,同时提高了信号链路的效率和可靠性。模块化设计的优势PCB空间优化:高集成度设计大幅减小了射频电路的尺寸,适用于紧凑型移动设备。减少设计复杂度:模块化设计减少了器件间的匹配与调试工作,加速产品开发周期。性能稳定性。 阅读详情

相关推荐

ror中文资料

ror中文资料ror中文资料

x86汇编_循环左/右移_带进位的循环左/右移_笔记48

x86汇编_循环左/右移_带进位的循环左/右移_笔记48

Silent_Hunter的博客 1万+

ror

NULL 博文链接:https://xuxiangpan888.iteye.com/blog/266696

ROR 学习笔记系列二 基于ROR的简单Hello World程序入门

本篇是本系列的第二个教程,在本章里面我将就开发一个简单的ROR Hello World程序帮助大家入门,任何程序入门都会使用Hello World!这个程序设计里面的经典,使用率最高,几乎每个程序设计人员都写过.当然我个人写程序最入门的我也一般是先写一个Hello World程序来进行入门...好了,下面我们开始吧!   首先,我们要确定自己的工作目录,比如我的工作目录就是E:/RailsDe

yuezu技术专栏 1216

【安全性分析】随机预言机模型(ROM)和随机响应模型(ROR

随机预言机模型(Random Oracle Model, ROM)和随机响应模型(Real-Or-Random model, ROR)是作为协议正式安全分析的重要工具,各有其优势和局限。它们都依赖于预言机 (Oracle) 的概念,但在实现细节和适用场景上存在区别。随机预言机模型是一种理论模型,设计者假设存在一个“随机预言机”,参与者可以查询这个预言机以获取随机且唯一的响应。这个模型允许将某些复杂的计算问题(如哈希函数)理想化为一个可以查询的随机功能。它对每一个不同的输入返回完全随机且独立的输出。

JingYan_Chan的博客 1887

RoR的正确定位

最近由于工作原因,用appfuse、asp做了些东西,猛然间又怀念起四个月前学习的RoR,这才领悟到了RoR正确的定位。自从RoR开始流行以来,一直就口水战不断。原因何在?其实就在于不知道国外大佬们作何感想,一上来就把RoR的矛头指向了Java。Java是大家热爱了很久的老大,MS炒了好几年的C#都动弹不了它,说明其在稳定性、规范化、应用范围上是具有统治力的。RoR本身是相当优秀的,可惜指错了

愚者千虑 1310

点云滤波ROR和SOR

ROR的优点是实现简单,并且在点云分布较均匀时效果较好,但在点云密度不均时可能表现欠佳。SOR则更适合处理复杂分布的点云,能更好地适应不同密度的局部区域,但计算相对较为复杂,因为需要对点云的统计特性进行分析。如果点云数据比较稠密且分布均匀,且噪声点是零星的孤立点,ROR是不错的选择。如果点云数据的分布存在较大变化,且噪声点成片或与其他点混杂在一起,SOR更加适用。

qq_31638535的博客 3203

ROR随想

 工作近11年了,大部分时间在做企业应用,由于主要技术领域采用了Java,所以绝大多数时间混迹与JavaEE领域,早年写过perl,后来vs2003时写过1年C#,写过近两年的python+java,但每次最终都回归到JavaEE的老路上来,总体感觉,在企业应用领域,JavaEE和DotNet目前还是最佳解决方案,个人更偏重JavaEE最近公司一个没人干的活落到了研究院技术部,升级

Sagacity──池建强的blog 1142

如何让ror支持中文

在网上流传着这样的办法让ROR以及Mysql支持中文: 在radrails中,请在project的property对话框中,左边选中info节点,右边设置编码方式为UTF-8 修改MySQL的配置文件C:/Program Files/MySQL/MySQL Server 5.0/my.ini,改其中的两处default-character-set=utf8,改完后重启My

zhourongbiao的专栏 1325

Java、RoR、PHP,一个都不能少

前几年一直弄Java,半年前跟风用过一段时间RoR,最近在搞PHP。 现体会如题:Java、RoR、PHP,一个都不能少。各种程序设计语言最终的归宿,其实是由最初的设计思想所决定的。 C定位于底层,成就了时至今日的底层霸主地位;VB的初衷就是让Windows开发简单易用,故至今仍然占牢其地盘;Java最初瞄准的是跨平台和解决复杂问题,这一目的已然达到,并正在发扬光大;PHP则是追求简单、直接的

愚者千虑 1680

java ror框架搭建_ROR 环境的 搭建

1)安装RUBY:从 http://www.ruby-lang.org/en/ 下载 ruby182-15.exe,安装Rubyruby -v 看是否安装成功。2)安装RAILS框架 :gem install rails --remotesrails -v 看版本号号,看是否安装成功。3)安装 J2SDK 和Eclipse:我安装了语言文件,用eclipse.exe -nl zh 实现中文化。环...

weixin_34513260的博客 226

RoR部署方案深度剖析

RoR的部署方案可谓五花八门,有Apache/Fastcgi方式的,有Nginx/Mongrel方式的,还有lighttpd/Fastcgi方 式,也有人使用HAProxy/Mongrel,各种部署方式都是众说纷纭,让人搞不清楚哪种方式更好一些。我的这篇文章就是希望结合我们运营 JavaEye网站一年多以来的经验(通过统计Rails的production.log,JavaEye网站目前每天处

phphot 1757

GitCode上的RoR示例项目

GitCode上的RoR示例项目 这是一个使用Ruby on Rails框架编写的示例项目,它可以帮助您了解如何使用RoR开发Web应用程序。 什么是Ruby on RailsRuby on Rails是一种流行的Web开发框架,它基于Ruby编程语言RoR使用模型-视图-控制器(MVC)架构模式,使开发人员能够快速构建功能丰富的Web应用程序。 RoR示例项目的用途 本示例项目旨在提供一个...

gitblog_00080的博客 381

ROR是什么[概念]

ROR是什么[概念] [code] RoRRuby on Rails的缩写。Ruby on Rails是一个用于编写网络应用程序的框架,它基于计算机软件语言Ruby,给程序开发人员提供强大的框架支持。Ruby on Rails包括两部分内容:Ruby语言Rails框架。 什么是Ruby? Ruby 语言是一种动态语言,它与Python、Smalltalk和Perl这3种编...

天天开心 482

java ror_Java会因为RoR的流行而过时吗?

在四年以前,当我开始鼓吹Hibernate,抨击EJB的时候,遭到的是群起而攻之的场面,但是不到一年之后,Hibernate已然得到了普及和大多数Java开发人员的认可。在三年以前,当我开始赞誉spring的时候,spring还面临着EJB3的阴影,以及EJB2对其不登大雅之堂的指责,然而不到一年的时间,spring已经成为绝大多数Java开发人员的首选。在两年以前,我极力希望宣传webwork,...

weixin_30514003的博客 186

Ror初学笔记

 Ror正在以惊人的速度增长着,特别是在经常光顾JavaEye的时候发现Ror已经在国内有很好的基础了,当然要凑个热闹尝尝鲜 咯。     目前国内Ror的中文资料还是很少的,到网上找找就只有Eiffel Qiu的 Ruby on Rails实践(以下简称为Ror实践),想必是如果有朝一日Ror成就大业了,那么国内肯定本文的作者肯定就是国内Ror的开山鼻祖咯。毕竟Ror是新事务,像我这种只

yueguangyuan的专栏 7498

关于汇编ROR的运算

设(AX)=5,(BX)=3 ,(CX)=2,执行下列程序段后,(AX)= LOP: ROR BX,CL ADC AX,BX LOOP LOP 请问ROR是怎么移位的?谢谢 ROR是循环右移指令,把目的操作数整体右移由源操作数指定的位

GRANT的小菜园 6752

什么是ROR? 什么是SOA? 什么是SaaS ?

 RoRRuby on Rails)是基于动态脚本语言——Ruby语言Web开发框架,其主要应用领域是Web应用程序的开发。使用RoR开发优势在于简便,RoR提倡“化繁为简”,在实际开发过程中,开发人员只需编写少量代码即可完成强大的功能,这主要得益于RoR的约定规则。此外,由于RoR自身实现了完整的MVC模式,因此开发人员只需使用RoR即可完成整个Web应用程序的开发。 面向服务的体系

yh_bxhl的专栏 1149

(HDD Regenerator(硬盘再生器)V2.0 绿色汉化版.rar

HDD Regenerator(硬盘再生器)V2.0 绿色汉化版.rar 一个修理硬盘的好帮手

上一篇: 使用commons-logging记录日志信息
taoxi
博客等级 码龄19年 0粉丝 3原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值