为什么需要Go这样一个新编程语言?
Go语言最早并不是样语一个Google的正式项目,而是个新作为一个“20%”的项目出现,直到2009年才以开源的编程方式面向大众,目前Go Team有稳定的样语发布周期,大约半年一个新的个新版本,目前***为1.9版本。编程
Go语言的样语出身可以说是非常豪华的,最早对Go语言的个新讨论是由罗伯特·格瑞史莫、罗伯·派克和肯·汤普逊发起的编程,主要是样语为了解决C++中出现的问题而发起的项目。肯·汤普逊是个新C语言和Unix的***,罗伯特·格瑞史莫参与设计了Java的编程HotSpot虚拟机和Chrome浏览器的JavaScript V8引擎,罗博·派克在大名鼎鼎的样语Bell Lab任职多年,亿华云计算参与了Plan9操作系统、个新C编译器以及多种语言编译器的编程设计和实现。
Go语言从2009年开源到现在吸引了很多开发者的注意,分别获得了2009年和2016年的TIOBE之星,如果说2009年那一次是因为Google的影响,那2016年这一次绝对是自身实力的厚积薄发,如今已是2017年的下半年,读者见到本书会在18年年初。
在互联网蓬勃发展的今天,越来越多的编程语言涌入到企业开发中来。Go语言作为一个新生代的编程语言同样也被开发人员所追捧,但由于Go语言的编程资料很少很多人不知道该如何去入门。即使找到部分资料,但是不够系统。正所谓知识来源于实践,本书追随由浅入深、系统讲解这一本质特点带领读者真正掌握和运用Go语言的程序设计特点,做到融会贯通。源码库

传统的语言如C++,大家花费太多时间来学习如何使用这门语言,而不是如何更好的表达写作者的思想,同时编译花费的时间实在太长,对于编写-编译-运行这个链条来说周期太长。动态语言如Python,由于没有强类型的约束,很多问题需要在运行时发现,这种低级错误更应该交给编译器来发现。同时有如下趋势:
人力成本越来越高; 机器越来越便宜; 机器的性能越来越厉害; 在开发效率和运行速度上达到平衡;这就是Go语言的诞生背景。
Go的哲学思想
简化这门语言必是一门更大的成就 -Rob Pike
Go的思维方式
最小心智负担原则; 最小特性; 最小惊异; 最少犯错既会;Go语言在工程上的设计
Go在工程上的设计可谓体贴入微,没有依赖地狱,甚至是glibc; 编译一次,随处拷贝,部署极为方便; 交叉编译只是一个环境变量的问题;Go语言的服务器租用并行和并发
并发(concurrent)不是并行(parallel) 例:node.js具有并发的能力,但不能充分利用多核 写出一个能充分利用多核的程序需要很深的系统编程积淀 得益于优秀的设计,Go可以轻松地写出跑满所有CPU的程序Go语言开发的项目
Docker,火热的容器化技术; Kubernetes,Goole Borg的开源实现; Etcd, 类似zookeeper的高可用key-value存储; TIDB, 国人开发的Google spanner的开源实现;相关文章
- 摘要:电脑硬盘的安装是一项关键的任务,不仅可以增加电脑的存储空间,还能提高其运行速度。但对于没有经验的用户来说,硬盘安装可能会成为一项复杂的任务。本教程将一步步指导您如何安装电脑硬盘,确...2025-11-04
 
Redis 简介什么是 RedisRedis 的全称是 Remote Dictionary Server,它是一款 开源的 高性能的 NoSQL 数据库,它可以用作 数据库、缓存 和 消息队列。什么是2025-11-04
此前为大家介绍过域名评估有什么方法?评估域名要怎么做?很多人了解到有关域名价值是一个非常抽象的概念,为了可以即准确又正确的评估客户域名价值,下面是一些域名评估技巧,评估域名的从业人员一定要看!1、域名2025-11-04
赞!推荐一款 Python 神器,不写一行代码,就可以调用 Matplotlib 绘图!
介绍一款新的绘图神器:sviewgui。sviewgui介绍此 GUI 基于 matplotlib,您可以通过多种方式可视化您的 csv 文件。主要特点:Ⅰ 散点图、线图、密度图、直方图和箱线图类型;2025-11-04- 摘要:随着科技的不断进步和设计行业的发展,人们对于图像和设计的要求也越来越高。而dpidotsperinch,每英寸点数)的大小设置对于图像的质量和打印效果起着关键性的作用。本文将为大...2025-11-04
 
怎么创建网站域名?创建域名的方法是什么?创建域名最重要的是什么?本文将主要为大家介绍创建域名的方法和创建域名的重要事项。相信多数人在创建网站域名的情况下,发现简洁明了的好域名大部分都早已被他人申请注册2025-11-04

最新评论