cpp-V语言中文主页

  • M5_686700
    了解作者
  • 3.2MB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-09 07:34
    上传日期
V语言是为开发可维护的软件而创建的简单、快速、安全的编程语言。
cpp-V语言中文主页.zip
  • vlang-zh.github.io-master
  • modules
  • .keep
    0B
  • tools
  • md2html
  • main.go
    5.4KB
  • docs.html
    24.9KB
  • weixin-guanggu-coder-logo.png
    143.3KB
  • go.mod
    76B
  • index.html
    10.4KB
  • vwin.mp4.gif
    245.7KB
  • v.png
    3.9KB
  • README.md
    7.6KB
  • go.sum
    181B
  • buildv.mp4.gif
    165.4KB
  • faq.md
    4.7KB
  • docs_advanced.html
    6.7KB
  • favicon.ico
    1.1KB
  • faq.html
    6KB
  • docs_advanced.md
    5.1KB
  • apps.md
    1.4KB
  • hot.webm.gif
    309.3KB
  • docs.md
    20.5KB
  • buildv.mp4
    173.8KB
  • CNAME
    12B
  • apps.html
    2.3KB
  • hot.webm
    808.8KB
  • LICENSE
    1KB
  • gg.png
    169KB
  • Makefile
    443B
  • doom.png
    484.8KB
  • .nojekyll
    1B
  • vwin.mp4
    392KB
  • screen3.png
    830.8KB
  • default.css
    9.8KB
内容介绍
# V语言中文网 - *中文文档译者:柴树杉( https://github.com/chai2010 )* - *网易云课堂视频教程:[V语言入门](https://study.163.com/course/courseMain.htm?share=2&shareId=480000001914454&courseId=1209408820&_trace_c_p_k2_=e3d8df173a5d439eafd42b313f0aed0c)* ![](v.png) V语言是为开发可维护的软件而创建的简单、快速、安全的编程语言。 - 中文主页:https://vlang-zh.cn - 中文代码:https://github.com/vlang-zh - 语言官网:https://vlang.io - 官方代码:https://github.com/vlang 相关资源: - V语言教程:https://vlang-zh.cn/docs.html - V语言教程(高级主题):https://vlang-zh.cn/docs_advanced.html - V语言实例:https://github.com/vlang-zh/v-examples - V语言案例:https://vlang-zh.cn/apps.html - FAQ:https://vlang-zh.cn/faq.html Google讨论组: - https://groups.google.com/forum/#!forum/vlang-zh V语言资源精选(Awesome Vlang): - https://github.com/vlang-zh/awesome-vlang-zh 从代码编译V语言: - https://github.com/vlang/v#installing-v-from-source Docker环境: ```shell $ docker pull xena/vlang:0.0.12 $ docker run --rm -it xena/vlang:0.0.12 sh $ docker run --rm -it xena/vlang:0.0.12 /root/code/v/compiler/v $ docker run --rm -it xena/vlang:0.0.12 /root/code/v/compiler/v run /root/code/v/examples/hello_world.v ``` QQ群和微信群: - V语言QQ群:878358520 - V语言微信群请关注“光谷码农”微信公众号,然后从底部菜单进群。 ![](weixin-guanggu-coder-logo.png) ---- ## Hello, world 在线运行:https://vlang.io/play ```rust fn main() { areas := ['game', 'web', 'tools', 'https://vlang-zh.cn'] for area in areas { println('Hello, $area developers!') } } ``` 更多的例子请访问链接 ---- ## 开发状态 V语言还处于非常早期的开发阶段。很多特性都标记为开发中状态(WIP,work in progress)。不过此页面相关的内容和代码都会在2019年6月22号开源。如果所有的WIP开发工作都完成,那么将是发布V1.0的时候。 ## V语言的特色 ### 快速编译 在Intel i5-7500 @ 3.40GHz, SM0256L SSD没有优化的环境,每秒钟可以编译120万行V代码。这是通过模块化和直接输出机器码来实现快速编译的。 V语言编译器也可以直接输出C语言代码,但是输出的性能将下降到10行每秒钟。 *注:直接输出机器码还处于非常早期的阶段,目前只支持X64环境的Mach-O格式的目标文件。因此目前必须先输出C代码再进行编译。* ### 安全 - 没有空值 - 没有全局变量 - 没有未定义的值 - 没有未定义的行为 - 没有变量屏蔽 - 边界检查 - Option/Result类型 - 泛型(WIP) - 默认变量不可变 - 默认函数是纯函数 - 模式结构体不可变 ---- ## 性能 - 快如C语言 - 和C语言对接没有额外成本 - 最小化内存分配行为 - 内置的序列化没有基于运行时反射 - 输出的二进制没有外部依赖,一个Web服务才65KB ## 用于构建可维护程序的简洁语言 你可以在半个小时读完全部的自带文档。虽然简洁,但是不简单!你可以用V语言做任何其它语言可以做的事情! ---- ## 编译器400KB,零依赖 语言的标准库小于400KB。V语言已经自举,用V语言编写,可以在0.4秒内构建(到今年地,时间继续降到0.15秒)。 时间对比: ``` 语言 内存大小 编译时间 Go 525 MB 1m 33s Rust 30 GB 45m GCC 8 GB 50m Clang 90 GB 25m Swift 70 GB 90m V 0.4 MB 0.4s ``` 目前V语言只依赖C语言编译器,用于启动。一旦语言完备,就可以不再需要C语言编译器。 先在0.4秒内构建V,然后使用生成的编译器再次构建自己: ![](buildv.mp4.gif) ---- ## C/C++代码到V代码 V可以翻译整个C/C++代码到V代码,以享受带来的安全性、简单性和高达400x的编译速度。 比如C++代码: ```c++ std::vector<std::string> s; s.push_back("https://vlang-zh.cn is "); s.push_back("awesome"); std::cout << s.size(); ``` 将翻译为以下V代码: ```rust mut s := [] s << 'https://vlang-zh.cn is ' s << 'awesome' println(s.len) ``` 关于翻译DOOM的博客文章即将发布。 *翻译几乎支持全部的C语言标准,但是对C++对支持还处于早期阶段。上面是简单的例子,复杂的C++代码可能有困难。C++是一个比较复杂的语言,我们希望今年年底能完成这个工作。* DOOM从C代码翻译到V代码后,编译时间是0.7秒,提升了25倍。 ![](doom.png) ---- ## 代码热加载 修改代码之后无需重新编译,直接查看修改后的结果,大大提升开发效率。 ![](hot.webm.gif) ---- ## 强大的图形库 基于GDI+/Cocoa Drawing构建的跨平台绘图库,以及基于OpenGL的图形库,用于构建更复杂的2D/3D应用程序,具有以特性: - 加载复杂的3D纹理(WIP) - 相机(移动和环顾四周)(WIP) - 骨骼动画(WIP) DirectX,Vulkan和Metal的支持已经在计划中。 ![](gg.png) ---- ## 本机跨平台GUI库 使用本地窗口控件。跨平台开发不在需要嵌入一个巨大的浏览器引擎。V语言提供了一个ui模块用于本地GUI应用开发:Windows底层使用WinAPI/GDI+,macOS底层使用Cocoa。而Linux通过定制的绘图实现。 即将到来的特性: - 类似Delphi的可视化编辑器用于本地GUI应用开发。 - 支持iOS/Android,使用本地窗口控件。 - 类似SwiftUI和React Native的声明式API。 下面是用V语言的ui包开发的Slack本地客户端Volt,只有300KB大小: ![](screen3.png) ---- ## 交叉编译更便捷 只要运行`v -os windows .`或`v -os linux .`就可以轻松实现跨平台交叉编译。即便是GUI应用开发,交叉编译也不需要额外的步骤!(目前编译macOS应用只能在macOS系统) 下面展示了先用macOS进行V语言应用开发,然后在使用Windows VM测试输出v.exe程序: ![](vwin.mp4.gif) ---- ## 无痛部署和依赖管理 使用V语言构建应用,无论代码规模多大,只要简单运行`v .`命令。不需要配置任何构建环境、makfile文件等。因为采用精通链接,不会有任何其它动态库依赖,可以在任何同类型的操作系统运行。 例如只需要运行`v get sqlite`就可以获取sqlite库(WIP)。 ## 到处可运行 V语言可以输出C代码,因此只有有C语言的地方都可以用V语言开发应用,同时可以借助GCC或Clang强大的优化能力。V语言可以没有代价地调用C函数,同时其它任何语言也可以像调用C函数那样调用V语言函数。 ---- ## REPL ```shell $ v >> data := http.get('https://vlang.io/utc_now')? >> data '1551205308' ``` ## V脚本(WIP) ```shell #v for file in ls('build/') { rm(file) } mv('*.exe', 'build/') v run deploy.v ``` ---- ## 内置Web框架 ```rust ['/post/:id'] fn (b Blog) show_post(id int) vweb.Result { post := b.posts_repo.retrieve(id) or { return vweb.not_found() } return vweb.view(post) } ``` V语言[论坛](https://blog.vlang.io/forum)和[博客](https://blog.vlang.io/)均采用内置的Web框架开发。 ---- ## 其它 - V语言教程:https://vlang-zh.cn/docs.html - V语言教程(高级主题):https://vlang-zh.cn/docs_advanced.html - V语言实例:https://github.com/vlang-zh/v-examples - V语言案例:https://vlang-zh.cn/apps.html - FAQ:https://vlang-zh.cn/faq.html V语言资源精选(Awesome Vlang): - https://github.com/vlang-zh/awesome-vlang-zh ---- 关注光谷码农公众号,了解V语言更多资讯: ![](weixin-guanggu-coder-logo.png)
评论
    相关推荐
    • C编程语言
      C编程语言
    • 编程语言教程
      编程语言教程
    • sabre:saber编程语言
      Sabre编程语言 Sabre是一种无废话(:copyright:)编程语言,它会妨碍您的前进。 它旨在“正常工作”,而不会添加不必要和and肿的语言功能。 为什么还要另一种语言? Sabre的目标是成为一种简单的语言,任何人...
    • 编程语言课件
      编程语言,包括编程语言这门课程的课件以及部分课程作业。
    • 编程语言
      编程语言
    • 7中编程语言
      这本书是老外写的,七个星期完成七种编程语言,每种语言的学习方法,如何快速掌握,最后通过自己的学习,来实现编写简单的编程语言的书,CS专业老外必须课用书
    • 编程语言搜索
      编程语言搜索
    • hope编程语言
      Hope是一个早期的函数式编程语言,有助于学习函数式编程和λ演算 Hope is a small functional programming language developed in the 1970s at the University of Edinburgh. It predates Miranda and Haskell and ...
    • mlpl:多语言编程语言
      多语言编程语言MLPL被设想为儿童的入门编程语言。 当今使用的大多数编程语言的问题是它们需要英语和字母表方面的知识。 因此,非英语国家的儿童比母语为英语的儿童有更高的进入障碍。 MLPL背后的想法是用非常简单...
    • Go编程语言
      Google出品的Go语言(1.0.3版)语言手册,英文CHM版本。