比较几种编程语言

时间:2021-06-12 19:13:58

简介

最近要使用几种不同的编程语言,C++, java,javascript,php,python和ruby。为了避免混淆,特写此文,以备参考。

数据类型

这里数据类型指的是内部数据类型,不考虑语言内部的自动转换。

 

C++

java

javascript

php

python

ruby

基本类型

bool

char

int, unsigned, long

float, double

pointer

boolean

char

int, long

float, double

 

String

Number

Boolean

integer

string

float

 

int, long, float, double

String

Number

Symbol

逻辑操作

&&, ||, !

&&, ||, !

&&, ||, !

结果不一定是布尔

&&, ||, !

and, or, not

&&, ||, !

字符串操作

strlen

strcat

substr

s.length

s.concat

s.substring

s.matches

s.length

+

s.substr

s.match

strlen

.

Substr

preg_match

len

+

s[n:m]

re.compile().match()

size

+

s[n, m]

s.sub

复合类型

struct

class

union

array

class

array

array

function

可当作对象使用

array

class

list

dictionary

tuple

class

Array,Hash

class

 

语句结构

 

C++

java

javascript

php

python

ruby

条件

if/else

switch/case

if/else

switch/case

if/else

switch/case

if/else

switch/case

if/else/elif

 

if/else/elseif

循环

for

while

do while

for/:

while

do while

for/in

while

do while

for

foreach/as

while

do while

for/in

while

for/in

while

 

l模块

Template function/class

function

 

function

具有层级化的定义域

function

Lamda function

Lamda block

异常

try

catch

throw

try

catch

finally

throw

 try

catch

throw

 try

catch

throw

 try:

except:

else:

finally:

begin/end

rescue

ensure

raise

对象

基于类

多继承

基于类/接口

单继承

基于原型

可实现继承

基于类

单继承

基于类

多继承

基于类

单继承

选择条件

  • C++:高性能,程序员对技术细节很熟悉。
  • Java:跨平台,有大量的编程工具
  • Javascript:浏览器脚本,富客户端
  • Php:服务器脚本,支持模板,支持框架
  • Python:通用脚本,支持模板,支持框架,代码简洁
  • Ruby:通用脚本,支持模板,支持框架,支持元编程