工作中主要用java和ruby,做个小结。

 

1.语言类型。java和ruby都是强类型语言。C++强类型语言。(谢谢评论指出,已修改)

 

2.是否需要编译。java需要编译成class文件才能运行。ruby不需要编译,可以直接运行。C++需要。

 

3.引入文件。java用import。ruby用require。C++用include。

 

4.比较。java比较是否同一对象用==,内容是否相同用equals。ruby与java刚好相反,equal?用于比较是否同意对象,==用于比较内容。

 

5.程序入口java的程序入口一般是main函数。ruby不需要写main函数,只要遇到可执行的语句,就可以开始执行,比如说整个rb只写一句 puts "hello world"。

 

6.异常处理java异常处理用try..catch..finally..throw。ruby用begin..rescue..ensure..raise。

 

7.语言风格。java格式严谨规范,ruby灵活自由。体现如下:

java的变量和方法都采用驼峰命名,如object.getName(),ruby一般用下划线隔开单词,如object.get_name,也可以用驼峰命名;

如果一个函数getName()参数列表为空,java在函数定义和调用时“()”不可省略,ruby可写可不写,如上一行的get_name;

java语句以分号结束,ruby不需要写分号;

java if后的括号不可缺,ruby 的if后的括号可写可不写;

java中块用花括号“{}”隔开,ruby用end作为块的结束关键字;

由于ruby灵活自由的特点,同样的功能有多种写法,优点是写起来很快,节省时间,适合插件开发和小型网站的开发,缺点是代码有强烈的个人风格,易读性有时候不好。而java在保证格式规范的前提下还保留了一定的自由度,因此很适合作为大型网站开发的首选语言,大概这也是为什么java应用比ruby广泛的一个原因吧。

 

......

随时补充。

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐