本人现想学ruby,请教学过的人可能跟小弟我说下ruby的好处吗
发布时间:2011-06-29 18:44:01 文章来源:www.iduyao.cn 采编人员:星星草
本人现想学ruby,请问学过的人可能跟我说下ruby的好处吗?
本人现想学ruby,请问学过的人可能跟我说下ruby的好处吗?ruby语言跟java,php,asp.net等语言相比较优点在哪里呢?谢谢~
------解决方案--------------------
敏捷开发
------解决方案--------------------
我喜欢Ruby,因为它的优点太多了,并且很优美。对自己也是一个挑战。
最近的统计显示,会Ruby 的程序员工资很高。
------解决方案--------------------
我学ruby的理由是,当初用perl用的很爽,发现ruby和perl很像,而且有纯的面向对象支持。
------解决方案--------------------
没什么好不好,工作需要才学。
------解决方案--------------------
JSP
JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准,本文简单介绍JSP及其优点。
JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。 JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。
在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无Frame。
JSP的优点:
·对于用户界面的更新,其实就是由 Web Server进行的,所以给人的感觉更新很快。
·所有的应用都是基于服务器的,所以它们可以时刻保持最新版本。
·客户端的接口不是很繁琐,对于各种应用易于部署、维护和修改。
Python
首先就以语法而论,python完全没有perl的灵活紧凑。只能说是中庸,感觉和basic,pascal,java差不多。一个简单的问题,如果没有相应的类库,也要写上一段臃肿的代码。唯一的好处是代码臃肿却直白,容易看懂--和basic一样。
类库-比perl真的是大大不如,只能覆盖很小的范围,更不用说java了,很多需要的工作都要自己来做。
快速开发--说实话,我觉得用python和用C++效率差不多。谁能告诉我python效率比C++高在哪里吗?对于perl我则可以毫不犹豫的说,是它语法的灵活,对于字符处理能力的强大。
很多人说python适合大型工程,但更多的人说,他们用python不过是作为一种原型语言来使用。。这本身不就有点矛盾吗?呵呵 而且对于脚本来完成大型工程,我本身就持怀疑态度。
觉得python唯一的优点在于嵌入C++使用时体现出来的:支持OO,语法容易看懂,有一个boost.python
不是想引起论战,只是不吐不快
Ruby
Ruby是面向对象的编程语言,她追求的是“简便快捷的面向对象编程”。Ruby是解释型语言,因此不需编译即可快捷地编程。同时Ruby具有类似Perl的强大的文本处理功能,她可并不只是个玩具,您可以用她来进行实用的编程。此外,您还可以很方便地使用C语言来扩展Ruby的功能,因此可以把她当作各种库的前端来使用。
若您曾经“想要一种简单的面向对象的语言”,或者认为“Perl的功能虽然好用,但它的语法真让人受不了”,又或者觉得“lisp系列语言的思想不错,但到处都是括号真让人讨厌,最起码算式应该按照通常的样式书写”。那么,Ruby或许能让您满意。
归纳以来,Ruby有以下优点。
解释器
Ruby是解释型语言,其程序无需编译即可轻松执行。
变量无类型
Ruby的变量没有类型,因此不必为静态的类型匹配而烦恼。相应地,错误检查功能也变弱了。
不需要变量声明
所有变量均无需声明即可立即使用。另外,从变量名即可判断出是何种变量(局部变量,全局变量,实例变量)。
语法简单
语法比较简单,类似Algol系语法。
不需要内存管理
具有垃圾回收(Garbage Collect,GC)功能,能自动回收不再使用的对象。
一切都是对象
Ruby从一开始就被设计成纯粹的面向对象语言,因此以整数等基本数据类型为首的所有东西都是对象,它们都有发送信息的统一接口。
类,继承,方法
Ruby当然具有面向对象语言的基本功能。
特殊方法
可向某对象添加方法。例如,可以把GUI按钮被按下时的动作作为方法记述下来,还可以用它来进行原型库(prototypebase)的面向对象编程(有人这么干吧)。
用模块进行混合插入(Mixin)
Ruby故意舍弃了多重继承,但拥有混合插入功能。使用模块来超越类的界限来共享数据和方法等。
迭代器
该功能可以将循环抽象化。
闭包
可以将某过程片段对象化。对象化后的该过程片段就称作闭包。
功能强大的字符串操作/正则表达式
以Perl为样板创造出了功能强大的字符串操作和正则表达式检索功能。
拥有超长整数
添加超长整数功能后,可以计算非常大的整数。例如计算400的阶乘也轻而易举。
具有错误处理功能
错误处理功能可以使您编写代码处理出错情况。
可以直接访问OS
Ruby可以使用(UNIX的)绝大部分的系统调用。单独使用Ruby也可以进行系统编程。
动态加载
若OS支持的话,可以在运行时读入对象文件。
但Ruby也有下列缺点。
Ruby On Rails,优点是不像Struts那样需要大量的配置文件,一切都采取默认的配置,包括访问路径,uri等,而这也是它的缺点,不能灵活的配置。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
Redmine+Git,在版本库菜单中404错误怎么回事?
在配置中用Git方式管理代码,加上了本地Git库路径:
/home/git/repositories/project.g...
-
一段RUBY代码,既不报错,但是不输出结果,帮忙看下
class Song
def initialize(name,artist,duration)
@name = name
@ar...
-
有没有人使用《Web开发敏捷之道》这本书的测试出了问题啊……
正在用《Web开发敏捷之道》第3版,测试这一块出现了问题,然后接着问题...
-
关于rake命令撤销 migrations
我这里遇到一个难题:
a.) ruby script/generation migration add_price_to_product_99 price:decima...
-
Ruby on Rails 如何实现完成大型数据库的实现与管理及维护
前些天在一家公司实习进行Web开发时 所用的语言是ruby 环境是 rails ...
-
RoR菜鸟求助
我在Windows系统上安装了ruby 1.9.3p0 (2011-10-30) [i386-mingw32],
然后安装了Rails 3.1.2,
因为mysql2 0.3.10没有w...
-
三个月可以做个EC网站吗?
像这种规模的:
http://www.infotop.jp
顺便问一下,在中国有这样的信息素材网站吗?
------解决方案-------...
-
网上的rails视频中用的是什么IDE
网上有一些老外的rails讲解视频,我想问下他们用的那个是什么IDE,不胜感激
------解决方案-------...
-
安装gem的路径问题
近日需要使用redis, 因为网络连不上gem, 我下载了源码准备本地安装.安装时一切顺利, gem list也显示已经安装...
-
ruby 连接 mysql 的问题
想用ruby 连接 mysql
修改database.yml
# SQLite version 3.x
# gem install sqlite3
#
# Ensure ...