DLang vs GoLang
这次我打算好好写, 因为最近有点闲.
首先介绍两种语言:
DLang
如果你不介意阅读英文, 那么DLang的官网有一份非常好的介绍, 简单概括下就是
- C太古老了, 缺乏很多新的特性.
- C/C++太复杂了, 但是语言标准就有数百页之多.
- C++中有很多常用的, 好的特性是通过标准库实现的, 而非编译器, 这样无法做到最好的优化.
- D希望简化开发, 降低复杂度, 但同时保留大多数好的特性.
- 作者希望这能成为C/C++的代替品.
- 垃圾回收. DLang采用了多线程GC(有时间我会写写这个), 回收精度很高, 性能损耗却非常小.
- C Style Syntax. C和D之间类似的代码具有类似的功能.
- DMD + LDC. DMD是官方的后端, 而LDC则是基于LLVM的后端, 前端则都是相同的DMD Front End.
- 松散的特性集合. D拥有运算符重载, 泛型编程, RTTI, 内建复数支持等.
- 包管理系统. 包的名称和导入与所在文件夹有直接关联, 简化了管理.
- C太古老, 太低级. C++太复杂.(Rob Pike讨论Go语言发端时提到过), 因此需要一个具有现代特性, 复杂度低的语言.
- 这门语言有最小化的特性集合, 其他内容均有标准库提供.
- 它具有类似C的语法, 能够编译成二进制代码, 并且内建并发支持.
- 作者们希望这能成为C++的代替品.
- 垃圾回收. Go有垃圾回收, 至于更详细的可以参看这里.
- 开源.
- Pascal Feel C Style Syntax.
- 大量的语法糖.
DLang vs GoLang相关推荐
- 【Golang源码分析】Go Web常用程序包gorilla/mux的使用与源码简析
目录[阅读时间:约10分钟] 一.概述 二.对比: gorilla/mux与net/http DefaultServeMux 三.简单使用 四.源码简析 1.NewRouter函数 2.HandleF ...
- 基于Golang的简单web服务程序开发——CloudGo
基于Golang的简单web服务程序开发--CloudGo[阅读时间:约10分钟] 一.概述 二.系统环境&项目介绍 1.系统环境 2.项目的任务要求 (1)基本要求 (2)扩展要求 三.具体 ...
- CentOS Docker安装配置部署Golang web helloworld
目录[阅读时间:约5分钟] 一.Docker简介 二.Docker的安装与配置[CentOS环境] 三.Docker部署Golang web helloworld 四.Docker与虚拟机的区别 五. ...
- 【ReactiveX】基于Golang pmlpml/RxGo程序包的二次开发
基于Golang pmlpml/RxGo程序包的二次开发[阅读时间:约20分钟] 一.ReactiveX & RxGo介绍 1.ReactiveX 2.RxGo 二.系统环境&项目介绍 ...
- 【golang程序包推荐分享】分享亿点点golang json操作及myJsonMarshal程序包开发的踩坑经历 :)
目录[阅读时间:约5分钟] 一.概述 1.Json的作用 2.Go官方 encoding/json 包 3. golang json的主要操作 二.Json Marshal:将数据编码成json字符串 ...
- 基于Golang的对象序列化的程序包开发——myJsonMarshal
基于Golang的对象序列化的程序包开发--myJsonMarshal[阅读时间:约10分钟] 一.对象序列化概述 二.系统环境&项目介绍 1.系统环境 2.项目的任务要求 三.具体程序设计及 ...
- 【golang程序包推荐分享】go-ini、viper、godoc
[golang程序包推荐&分享]go-ini.viper.godoc 一.go-ini 1.程序包简介 2.下载安装 3.简单使用[截取自官网] 二.viper 1.程序包简介 2.下载安装 ...
- 基于Golang的监听读取配置文件的程序包开发——simpleConfig_v1
基于Golang的监听&读取配置文件的程序包开发--simpleConfig_v1 [阅读时间:约10分钟] 一.配置文件概述 二.系统环境&项目介绍 1.系统环境 2.项目的任务要求 ...
- 基于Golang的CLI 命令行程序开发
基于Golang的CLI 命令行程序开发 [阅读时间:约15分钟] 一. CLI 命令行程序概述 二. 系统环境&项目介绍&开发准备 1.系统环境 2.项目介绍 3.开发准备 三.具体 ...
最新文章
- 基于MATLAB的车牌定位和识别
- 机器学习入门书籍导读-工程高等代数
- AI 基础:Python 简易入门
- Scala _05集合_数组(一)
- Asp.net性能优化-提高ASP.Net应用程序性能的十大方法
- win7 64位运行不了服务器,G6-e标准包可以装在win7 64位系统上吗?现在提示不能登陆到服务器...
- 【RPC】远程过程调用
- 华为密盒M310最新固件-精简美化版
- tap10.app cn.html,Tap连点器
- .Net语言的APP开发平台Smobiler3.2版本将于八月中旬发布!——3.2版本预告(二)
- 忘记准考证号获取四六级成绩的方法
- 成长篇-靡有不凡鲜克有终-02
- Django程序的发布
- MANIFEST.MF的文件的作用
- 简单选择排序 ← vector实现
- MMX, SSE(XMM,MXCSR,FXSAVE),SSE2,SSE3,AVX,AVX-512
- 碉堡的GitHub使用方式
- Android 头像、图片裁剪
- webstorm js中文乱码
- 计算机组装与维护2017,2017年计算机组装与维护实训报告.doc
热门文章
- 【机器人】正运动学,如何建立机器人各连杆坐标系和D-H参数表——1
- 判断一个时间段是否与另一时间段相冲突
- python基于元组list画图(plot list of tuples)
- C语言 一维数组求和
- Go语言学习笔记—gorm(一)
- 佛祖保佑,永不宕机,永无 Bug
- r语言npsurv_R语言代码-绘制SCI发表级的nomogram及calibration图
- 金行健:别看不上土味元宇宙
- 写一个判断方程根的C语言程序,写出求方程ax2+bx+c=0的根的算法,画出相应的程序框图,并要求输出它的实根....
- rpm卸载指定的软件