本人现想学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等,而这也是它的缺点,不能灵活的配置。