在 Go 语言 14 年的发展历史中,我们做得对的和不对的 —读后感

Sep 16, 2024

前言

go语言产生的背景

Go 语言在 2007 年末被构思出来;为了处理多核处理器网络系统大规模计算集群 和 网络编程模型 所带来的问题而设计开发;为了提高 这种环境下的工作效率 。 设计 Go 时的考虑因素,除了众所周知的像 内置并发 和 垃圾回收,还包括 严格的依赖管理 、系统规模增长时 软件架构的自适应性,以及 跨组件的健壮性 。

go语言 简介

Go 是 Google 开发的一种 编译型 、 支持并发 、带垃圾回收 的 静态类型 语言。Go 是为由编写、阅读、调试和维护大型软件系统的人设计的,不是在研究领域有突破的语言。
 

go解决的问题

  • 构建速度慢
  • 失控的依赖关系
  • 每个程序员使用相同语言的不同子集
  • 程序难以理解(代码难以阅读,文档不完善等)
  • 重复劳动
  • 更新代价大
  • 版本偏斜(version skew)
  • 难以编写自动化工具
  • 跨语言构建
一门语言的单个特性并不能解决这些问题。这需要有软件工程的大局观(larger view),所以在 Go 的设计中,试图把重点放在解决这些问题上。

 C 和 C++ 中的依赖关系

go语言的目标

 
go语言需要解决的问题:构建现代服务器软件时遇到的种种复杂性,如管理依赖关系、大团队协作编程以及人员更迭、软件的易维护性、高效测试、多核 CPU 和网络的有效利用等等。
 
Go 的目标一直都是简化和提高生产软件构建的效率。
 
 

Copyright © 2025 later

logo