V语言横空出世,C/C++/Java/Python/Go地位不保

Posted vlangdev

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了V语言横空出世,C/C++/Java/Python/Go地位不保相关的知识,希望对你有一定的参考价值。

V语言已在github正式开源,目前已收获近9000星,引发开发者的强烈关注。

V语言到底是怎样一门语言?已经有了C/C++/Java/Python/Go..., 我们还需要另外一门语言吗?

先看看V语言对自己的定位:
    Simple, fast, safe, compiled language for developing maintainable software。
V语言将编写可维护软件,作为自己的定位。其鲜明的特点是简单、高效、安全、编译型语言。

大家都有这样的经历:接手别人的代码,发现代码极度混乱、阅读起来极其费解、修改起来极其困难,心里一万个草泥马飘过......。这就是典型的不可维护软件。
如果能有一门语言,能够改变这种状况,将软件可维护性作为首要宗旨,并且开发简单,生产力极高,并且软件运行效率极高,这样的编程语言,不是程序员一直梦想的吗?

而目前,C/C++/Java/Python/Go/Rust 等语言,都没有实现上述的目标。咱们来吐槽一下:
C:开发效率极低,维护成本非常高,生态系统非常差。
C++: 语言极度复杂,维护成本非常高,生态系统非常差。
Java:运行效率差,资源占用高
Python:运行效率差
Go:语言并不简单,内置GC是永远的痛。对社区的呼声响应不高。
Rust:语言复杂,开发效率不高,与编译器做斗争,消耗了无谓的青春。


V语言,带来了全新的体验:
编译器极为小巧,才400多K
编译速度极快,目前10万行/秒,目标是120万行/秒的编译速度
语法超级简单,半小时就能学会
语言跨平台,开发者无需考虑平台相关问题
运行性能:与C语言相比,<5%
安全:没有空指针,没有全局变量,没有未定义的行为,变量缺省是不可修改的(immutability)
支持将C源码直接转成V,C++源码的转换也正在开发中
热代码加载(Hot code reloading)
语言自带UI图形库

 

V语言官网主页上的代码:

fn main()
    areas := [‘game‘,‘web‘,‘tools‘,‘science‘,‘systems‘,
                                     ‘embedded‘,‘GUI‘,‘mobile‘]

    for area in areas

        println(‘Hello, $area developers!‘)
   

对于游戏开发、Web开发、工具开发、科学计算、系统编程、嵌入式、图形界面开发、移动开发,都是V语言擅长的领域。
并且,V语言能够跨平台,使得可以用V语言开发Shell脚本,这样就能在不同的平台上保持一份源码,从而避免了bat, bash, kshell 等无法跨平台的问题。
V语言目前,处于极其快速的开发过程中,几天就会发布一个新的版本。2019年底,会Release 1.0版本。因此,C/C++/Java/Python/Go的地位会受到严峻的挑战。

未来,如果V语言进一步,提供工具将Java/Python/Go/Rust 的源码都直接转换为V,那么将极大摧毁这些语言的地位。

V语言的未来,让我们拭目以待!

更多V语言的介绍,可以关注微信号 vlangdev  或扫描二维码  技术图片

 

以上是关于V语言横空出世,C/C++/Java/Python/Go地位不保的主要内容,如果未能解决你的问题,请参考以下文章

C语言可变参数表的使用详解

当我们说Go语言的时候,我们在说些什么?

C语言实现LRU缓存策略

深入探索C语言struct的用法

从其他语言(如 Java、PHP、Perl、Python 等)调用 C/C++ 代码的最佳方法是啥?

基于C语言的AES加密算法实现