Go语言历史背景及语言特性
历史背景
- Go 语言主要是为了解决 Google 内部在自己开发过程中面临的一些挑战所诞生的:
- 多核硬件架构
- 超大规模分布式计算集群
- Web 模式导致的前所未有的开发规模和更新速度
- 三位创始人
- Rob Pike
- Unix 的早期开发者
- UTF - 8创始人
- Ken Thompson
- Unix 的创始人
- C 语言创始人
- 1983 年获图灵奖
- Robert Griesemer
- Google V8 JS Engine
- Hot Spot 开发
- Rob Pike
语言特性
- 简单(关键字)
- 高效
- Go 语言是一种编译的强类型语言。
- Go 在支持了垃圾回收的同时,为了提供更高效的内存访问,Go也提供了通过指针可以直接进行内存访问。
- 生产力
- Go 不仅语法简洁,还有特别的接口类型
- Go 还有些编程约束,直接就为开发者做出了更好的选择,譬如在程序的扩展上:一般语言都会支持 复合 和 继承,很多面向对象编程的书籍中都会谈到 复合 > 继承,及相关原理,那么在 Go 语言中,只支持 复合。
- 云计算语言
- 越来越多的应用都采用了 Go 语言进行开发,例如 docker 、kubernetes 等。由于云端大量使用了 kubernetes 和 doker ,所以 Go 语言也被称为 云计算语言 。
- 区块链语言
- 区块链是最近继 AI 以来最热门的话题了,非常热门的 以太网 和 HYPERLEDGER 等都是可以用 Go 语言来进行开发的,所以 Go 语言也被称为 区块链开发语言 。
Go 语言下载及安装
- https://golang.org/doc/install
- https://golang.google.cn/dl/
Go语言历史背景及语言特性相关推荐
- 《C++语言入门经典》一第1章 初识C++——“Hello World!” 1.1 C++的历史背景
第1章 初识C++--"Hello World!" 视频讲解:52分钟 C++是当今流行的编程语言,它是在C语言基础上发展起来的,随着面向对象编程思想的发展,C++也融入了新的编程 ...
- C# 语言历史版本特性(C# 1.0到C# 8.0汇总)
历史版本 C#作为微软2000年以后.NET平台开发的当家语言,发展至今具有17年的历史,语言本身具有丰富的特性,微软对其更新支持也十分支持.微软将C#提交给标准组织ECMA,C# 5.0目前是ECM ...
- C# 语言历史版本特性(C# 1.0到C# 8.0汇总
C# 语言历史版本特性(C# 1.0到C# 8.0汇总) 历史版本 C#作为微软2000年以后.NET平台开发的当家语言,发展至今具有17年的历史,语言本身具有丰富的特性,微软对其更新支持也十分支持. ...
- C语言产生的历史背景和特点
C语言: 1.C语言最早是由贝尔实验室的Dennis Ritchie为了UNIX的辅助开发而编写的,它是在B语言的基础上开发出来的.尽管C语言不是专门针对UNIX操作系统或机器编写的,但它与UNIX系 ...
- C语言的概述和发展历史(C语言编程之旅)
各位bro,你们好,当你点开这篇博客时,我由衷的希望你们能够在这字里行间找到想要的答案.每个人都在寻找着答案,而我也在寻找着自己的答案,谨以此篇开启我自己的C语言学习之旅,2023年你我携手同行, ...
- java语言概述、java语言特性、java语言发展史、java语言作用
Java介绍: Java语言概述: Java语言是由美国Sun(Stanford University Network)斯坦福网络公司的java语言之父–詹姆斯·高斯林,在1995年推出的高级的编程语 ...
- go interface类型转换_Go语言的九大核心特性主要有哪些?
Go语言之所以厉害,是因为它在服务端的开发中,总能抓住程序员的痛点,以最直接.简单.高效.稳定的方式来解决问题.这里给大家讲解一下Go的核心特性. 并发编程 Go语言在并发编程方面比绝大多数语言要简洁 ...
- VS2022编写C语言及背景美化
文章目录 前言 一.VS2022编写C语言基本步骤 二.VS2022背景美化 1.安装插件 2.插件的使用 总结 前言 上一篇文章介绍了什么是C语言及使用VS2013编写C语言的基本步骤,现在再来介绍 ...
- C语言历史、特点、数据类型
文章目录 C语言的知识体系 学习目标: 学习要求 一.数据类型 嵌入式开发中为什么选择C语言? 为什么内核开发选择C语言? 1.C语言基础知识点 C语言语法标准 2.数据类型分类 基本数据类型 复合数 ...
最新文章
- 在Red Hat Linux5下构建LAMP网站服务平台之MySQL、PHP的安装与配置
- 企业网络推广之中如何对网页设计提出新的色彩搭配原理?
- js中怎么为同级元素添加点击事件
- Win2008支持PowerShell设置方法
- git提交emoji_Emoji-Log:一种编写Git提交消息的新方法
- 调查:拉丁美洲25%的信用卡用户希望使用加密货币付款
- json过滤某些属性 之@jsonignore
- html加载js那些事
- Tapestry 5简介
- mysql50题_My SQL 练习题
- 第四十天 阿乐在其中—Android小游戏的飞机(四)加入敌人
- 【backtrader源码解析7】backtrader中mathsupport中计算平均值、方差和标准差的函数的分析(含金量挺低的)
- 解决用VC6.0编写的软件在另一台电脑编译时无APPMODUL.CPP源文件问题
- 实验四:组合电路设计实验之一 (血型关系通过逻辑电路的实现)
- 存储卡中各种文件夹用处
- mPaaS客户端基线升级踩坑先升到10.1.32再升到10.1.60(iOS)
- matlab滤波器滤除低频直流信号,对低频信号的滤波的方法
- webgis中自定义地图颜色实现思路
- git -- RPC failed; HTTP 403 curl 22 The requested URL returned error: 403
- 成分分析类毕业论文文献包含哪些?