官网:V 编程语言 (vlang.io)性能- C 互操作,无需任何成本
- 最少的分配量
- 内置序列化,无需运行时反射
- 编译为没有任何依赖项的本机二进制文件:一个简单的 Web 服务器只有大约 250 KB
- 与 C 一样快(V 的主后端编译为人类可读的 C), 使用等效代码。
V 确实为安全带来了一些开销(例如数组边界检查、无 GC),但当性能更重要时,可以禁用/绕过这些功能。
快速编译 V 每秒编译 ≈110k(Clang 后端)和 ≈500k(x64 和 tcc 后端)行代码。(英特尔i5-7500,SM0256L SSD,无优化)
V是用V编写的,并在一秒钟内编译自己。大多数编译器仍然是单线程的,因此将来会快 2-3 倍! 小巧且易于构建的编译器V可以在一秒钟内引导,方法是编译其代码转换为C,只需一个简单的 cc v.c无需库或依赖项。
为了进行比较,构建每个编译器所需的空间和时间:
| 空间 | 构建时间 | go | 525MB | 1 m 33 s | RUST | 30 GB | 45m | GCC | 8 GB | 50m | Clang | 90 GB | 60m | Swift | 70 GB | 90m | V | < 10 MB[2] | <1s |
创新灵活的内存管理 V 首先避免了不必要的分配 通过使用值类型、字符串缓冲区,提升简单的无抽象代码样式。 现在,分配由一个最小且性能良好的GC处理,直到V的自动自由引擎准备好生产。 可以使用 启用自动释放。它负责处理大多数对象 (~90-100%): 编译器在编译期间自动插入必要的自由调用。 剩余的一小部分对象通过 GC 释放。 开发人员不需要更改其代码中的任何内容。“它 只是工作”, 就像在Python,Go或Java中一样,除了没有繁重的GC跟踪所有内容。 或每个对象的昂贵 RC。-autofree 对于希望拥有更多低级别控制的开发人员,可以手动管理内存 跟。-gc none C 翻译 V 可以翻译您的整个 C 项目,并为您提供安全、简单和编译加速(通过模块)。 热码重载 立即获取更改,无需重新编译。由于您也不必在每次编译后都进入您正在处理的状态,因此这可以节省大量宝贵的开发时间。 强大的图形库 基于 GDI+/Cocoa 绘图构建的跨平台绘图库,以及用于更复杂的 2D/3D 应用程序的基于 OpenGL 的图形库 计划支持DirectX,Vulkan和Metal。 轻量级快速的跨平台 GUI 库 使用 V UI 构建本机 UI 应用。您不再需要嵌入浏览器即可快速开发跨平台应用程序。
V 有一个使用自定义绘图的 UI 模块,类似于 Qt 和 Flutter,但尽可能与本机 GUI 工具包相似。 它有一个类似于SwiftUI和React Native的声明性API,可以在Windows,Linux,macOS和Android上运行。 即将推出: 一个类似德尔福的可视化编辑器,用于构建本机 GUI 应用程序 轻松交叉编译 要交叉编译您的软件,只需运行或.无需额外步骤,即使是 GUI 和图形应用程序!
(编译 macOS 软件目前仅适用于 macOS。v -os windowsv -os linux 轻松部署和依赖关系管理 要构建您的项目,无论多大,您需要做的就是运行 v . 没有构建环境、生成文件、标头、虚拟环境等。
您将获得一个静态链接的二进制文件,该二进制文件保证可以在所有操作系统上运行(前提是交叉编译),没有任何依赖项。
通过 vpm(一个用 V 编写的集中式包管理器)安装新库就像 v install ui
使用 vfmt 进行代码格式化,以实现一致的样式 不再有关于编码风格的争论。有一种官方编码风格 由 VFMT 格式化程序强制执行。 JavaScript 和 WASM 后端 V 程序可以转换为 JavaScript 内置测试框架友好的错误消息强大的内置 Web 框架
内置ORM
应用领域:
几乎可以在各个领域使用,包括系统编程,Webdev,gamedev,GUI,移动,科学,嵌入式,工具等。 V 与 Go 非常相似。如果你知道 Go,你已经知道 ≈80% 的 V。
感想:太强大了,该语言目前还是beta版本,希望早日出Release版本
|