「GO基础」起源与演进


在这里插入图片描述
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
在这里插入图片描述

  • 推荐:「stormsha的主页」👈,持续学习,不断总结,共同进步,为了踏实,做好当下事儿~
  • 专栏导航
    • Python面试合集系列:Python面试题合集,剑指大厂
    • GO基础学习笔记系列:记录博主学习GO语言的笔记,该笔记专栏尽量写的试用所有入门GO语言的初学者
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 运维系列:总结好用的命令,高效开发
    • 算法与数据结构系列:总结数据结构和算法,不同类型针对性训练,提升编程思维

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

💖The Start💖点点关注,收藏不迷路💖

📒文章目录

  • 1、起源
  • 2、演进
  • 3、社区发展
  • 4、总结


在这里插入图片描述

1、起源

Go 语言起始于2007年的构想,最终在2009年正式对外发布。自2009年9月21日起,该项目作为谷歌内部的20%创新工时项目启动,相关工程师利用个人时间参与到Go语言的研发工作中。

该语言背后的核心设计者均为IT界的知名专家:

  • Robert Griesemer:曾参与Java HotSpot虚拟机的开发;
  • Rob Pike:作为Go语言项目的总负责人,他早期是贝尔实验室Unix团队的一员,参与了Plan 9、Inferno操作系统和Limbo编程语言的研发;
  • Ken Thompson:也是贝尔实验室Unix团队的关键人物,他也是C语言、Unix和Plan 9的联合创始人之一,同时与Rob Pike联手制定了UTF-8字符集标准。

2、演进

2008年中期,Go语言的设计框架基本成型,部分团队成员转为专职,集中精力投入到编译器和运行环境的具体实现上。期间,Ian Lance Taylor加盟团队,并于2008年5月成功建立了一个gcc前端。

随后,Russ Cox加入团队,专注于语言特性和标准库的开发工作。直至2009年10月30日,Rob Pike通过Google Techtalk首次向外界展示了Go语言的魅力。

2009年11月10日,开发团队正式发布了遵循BSD风格授权(完全开源)的Go语言Linux和Mac OS X版本,紧接着在11月22日,Hector Chu发布了适用于Windows操作系统的版本。

作为开源项目,Go语言依托于社区的共同努力实现了快速增长,并吸引了众多开发者使用和改进。这使得Go语言项目拥有了庞大且活跃的开源社区,并在Ohloh排行榜上取得了显著位置。大约在2011年4月10日,谷歌决定调配专门的员工全职投入到Go语言的进一步开发工作中。开源模式无疑极大地拓宽了开发者群体的参与度,有力地推进了Go语言的快速发展步伐。Andrew Gerrand在2010年加入开发团队,成为共同开发者和重要的支持者。

Tiobe在2010年1月8日宣布Go语言荣膺 2009年度语言 称号后,Go语言在业内引起了广泛的关注。

截至2024年4月 Tiobe指数 GO语言排名如下:

在这里插入图片描述

以下是Go语言发展的几个关键时间节点:

  • 2007年9月21日:初步设计阶段启动
  • 2009年11月10日:首次面向公众发布
  • 2010年1月8日:荣获2009年度编程语言殊荣
  • 2010年5月:谷歌内部开始规模化应用Go语言
  • 2011年5月5日:Google App Engine开始全面支持Go语言

2010年5月起,谷歌开始在其实际的后端基础设施项目中积极应用Go语言,以解决复杂的后台环境管理问题,这一举动践行了“自己创造并使用”的原则,彰显出谷歌对Go语言的高度信任及其在生产力层面的巨大潜力。

3、社区发展

Go语言的官方网站为golang.org,该网站利用Go语言内建的godoc工具在Google App Engine上搭建Web服务器,提供了丰富的文本内容服务。其中一大亮点是Go Playground,这是一个在线的Go代码编辑器沙箱环境,用户无需安装任何环境就能直接在浏览器中编译和运行Go代码,体验诸如经典的"Hello, World!"示例等功能。

有关Go语言的更多信息,可以查阅github.com/golang/go,所有与项目相关的Bug跟踪和新功能提案均可在github.com/golang/go/issues查看。

  • golang-nuts是一个针对Go语言(Golang)的活跃社区论坛,开发者们在这里可以讨论有关Go语言的各种问题,分享代码和经验,互相帮助解决问题。这个论坛是学习和交流Go语言知识的重要平台之一,每天都充满了大量的讨论和问题解决方案。

  • google-appengine-go是一个针对Google App Engine上的具体应用设立的一个论坛,尽管两个论坛的主题有时会相互重叠,但都聚焦于探讨Go语言在该平台的应用问题。

  • go-lang.cat-v.org是Go语言开发者社区的重要资源中心

  • Go Tour Go语言提供的一个运行在Google App Engine上的互动式教程,对于中文用户,可以访问该教程的中文版本,通过命令go get -u github.com/Go-zh/tour tour进行安装。

4、总结

总的来说,Go语言已经发展成为一种广泛使用的编程语言,其简洁、高效和并发的特性使其在多个领域具有广泛的应用前景。


❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏、分享下吧,非常感谢!👍 👍 👍

🔥🔥🔥道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

💖The End💖点点关注,收藏不迷路💖

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/823599.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文讲明白什么是市场调研

本文主要介绍市场调研的主要步骤和工具方法,并简单介绍了淘宝在电商领域中市场调研的实践。 什么是调研 ▐ 定义 广义的含义,调研既是指市场调查,通过收集、分析和解释相关数据来达到了解企业现状、了解市场趋势、挖掘用户需求、确定产品研发…

『哈哥赠书 - 51期』-『数字风控体系:设计与实践』

⭐️ 赠书 - 《数字风控体系:设计与实践》 ⭐️ 数字风控概述 从2007年开始到2014年左右,高速移动网络和智能手机迅速在大众中普及,开启了移动互联网时代。在这个背景下,企业的产品与服务也出现了两个重要的趋势。 第一个趋势是…

VUE3 + Elementui-Plus 之 树形组件el-tree 一键展开(收起);一键全选(不全选)

需求&#xff1a; 产品要求权限树形结构添加外部复选框进行全部展开或收起&#xff1b;全选或不全选。 实现步骤&#xff1a; tree组件部分&#xff1a; <div class"role-handle"><div>权限选择(可多选)</div><div><el-checkbox v-mode…

Git回滚版本并push到远端master

1、查看日志 git log 2、还原最近的版本 () --git reset --hard commit-id 如&#xff1a;git reset --hard d84da14bf2743683eca7a015f56114faaa344f42 3、覆盖分支版本 git push -f origin dev 回滚本地master完成后&#xff0c;将回滚后的代码push到远端master&#xf…

C++笔记:异常

文章目录 C 运行时错误处理机制及其不足之处C 异常概念异常的使用异常的抛出和匹配原则在函数调用链中异常栈展开匹配原则异常的重新抛出举例演示说明例子一&#xff1a;串联举例演示大部分原则例子二&#xff1a;模拟服务器开发中常用的异常继承体系例子三&#xff1a;异常的重…

C++初级----list(STL)

1、 list介绍 1.1、 list介绍 1.list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭代。 1. list的底层是双向链表结构&#xff0c;双向链表中每个元素存储在互不相关的独立节点中&#xff0c;在节点中通过指针指向 其前一…

集成定制化软件的销售推广渠道有哪些?

集成定制化软件的销售推广渠道可以包括以下几个方面&#xff1a; 一、线上渠道&#xff1a; 官方网站&#xff1a;建立专业的官方网站&#xff0c;展示软件的功能、优势、案例等&#xff0c;提供试用或购买链接。社交媒体&#xff1a;利用微博、微信、抖音等社交媒体平台&#…

SpringBoot中的动态编程实战原来是这么玩的

Java 开发已经有越来越多的 Groovy 出现在后台了。 而对于一般的应用开发&#xff0c;只要能用 Java 就都能用到 Groovy&#xff0c;唯一的难点只在于能不能招到足够的人员。 注&#xff1a;今天我们分享的就是利用Groovy脚本在SpringBoot项目中实现动态编程&#xff0c;使业务…

【YOLOv8改进[Neck]】使用BiFPN助力V8更优秀

目录 一 BiFPN(双向特征金字塔网络) 1 BiFPN 2 EfficientDet 二 使用BiFPN助力模型更优秀 1 整体修改 2 配置文件 3 训练 其他 一 BiFPN(双向特征金字塔网络) BiFPN(双向特征金字塔网络&#xff0c; 2020)用于特征融合层。 官方论文地址&#xff1a;https://arxiv.org…

鸢尾花数据集分类(决策树,朴素贝叶斯,人工神经网络)

目录 一、决策树 二、朴素贝叶斯 三、人工神经网络 四、利用三种方法进行鸢尾花数据集分类 一、决策树 决策树是一种常用的机器学习算法&#xff0c;用于分类和回归任务。它是一种树形结构&#xff0c;其中每个内部节点表示一个特征或属性&#xff0c;每个分支代表这个特征…

Spring容器结构

文章目录 1.基本介绍1.Spring5官网2.API文档3.Spring核心学习内容4.几个重要概念 2.快速入门1.需求分析2.入门案例1.新建Java项目2.导入jar包3.编写Monster.java4.src下编写Spring配置文件1.创建spring配置文件&#xff0c;名字随意&#xff0c;但是需要放在src下2.创建Spring …

SparkUI 讲解

目录 Executors Environment Storage SQL Exchange Sort Aggregate Jobs Stages Stage DAG Event Timeline Task Metrics Summary Metrics Tasks &#x1f490;&#x1f490;扫码关注公众号&#xff0c;回复 spark 关键字下载geekbang 原价 90 元 零基础入门 Spar…

IDEA2023 开发环境配置

目录 1. 关闭IDEA自动更新1.2 IDEA 新版样式切换 2. Maven配置2.1本地仓库优先加载2.2 maven.config配置文件中 3. 全局配置JDK4. 配置文件编码:UTF-85. 开启自动编译&#xff08;全局配置&#xff09;6. 开启自动导包7. 开启鼠标悬浮&#xff08;提示文档信息&#xff09;8. 设…

golang 使用栈模拟计算器

思路&#xff1a; // Author sunwenbo // 2024/4/12 16:51 package mainimport ("errors""fmt""strconv" )// 使用数组来模拟一个栈的应用 type Stack struct {MaxTop int //表示栈最大可以存放数的个数Top int //表示栈底&#xff…

2024年阿里云4核8G配置云服务器价格低性能高!

阿里云4核8G服务器租用优惠价格700元1年&#xff0c;配置为ECS通用算力型u1实例&#xff08;ecs.u1-c1m2.xlarge&#xff09;4核8G配置、1M到3M带宽可选、ESSD Entry系统盘20G到40G可选&#xff0c;CPU采用Intel(R) Xeon(R) Platinum处理器&#xff0c;阿里云优惠 aliyunfuwuqi…

代码随想录算法训练营第二十九天|491.递增子序列、46.全排列、46.全排列II

491. 非递减子序列 思路&#xff1a; 在90.子集II (opens new window)中我们是通过排序&#xff0c;再加一个标记数组来达到去重的目的。 而本题求自增子序列&#xff0c;是不能对原数组进行排序的&#xff0c;排完序的数组都是自增子序列了。 所以不能使用之前的去重逻辑&…

【模拟】Leetcode 数青蛙

题目讲解 1419. 数青蛙 算法讲解 class Solution { public:int minNumberOfFrogs(string croakOfFrogs) {string target "croak";int n target.size();//保存target每个字符的位置indexunordered_map<char, int>index;for(int i 0; i < n; i)index[tar…

必应Bing国内广告推广,帮助企业降低获客成本!

搜索引擎广告作为数字营销的重要手段之一&#xff0c;因其精准定位和效果可衡量而备受青睐。而在众多搜索引擎平台中&#xff0c;必应Bing以其独特的市场定位和用户群体成为不可忽视的广告推广渠道。云衔科技作为一家专业的数字营销服务提供商&#xff0c;致力于帮助企业实现高…

深入理解GCC/G++在CentOS上的应用

文章目录 深入理解GCC/G在CentOS上的应用编译C和C源文件C语言编译C语言编译 编译过程的详解预处理编译汇编链接 链接动态库和静态库静态库和动态库安装静态库 结论 深入理解GCC/G在CentOS上的应用 在前文的基础上&#xff0c;我们已经了解了CentOS的基本特性和如何在其上安装及…

Windows 部署ChatGLM3大语言模型

一、环境要求 硬件 内存&#xff1a;> 16GB 显存: > 13GB&#xff08;4080 16GB&#xff09; 硬盘&#xff1a;60G 软件 python 版本推荐3.10 - 3.11 transformers 库版本推荐为 4.36.2 torch 推荐使用 2.0 及以上的版本&#xff0c;以获得最佳的推理性能 二、部…