Go语言的简介及安装步骤

本文介绍了Go语言的起源、关键特性如简洁语法、并发编程、内存管理和垃圾回收,以及其在服务器编程、分布式系统等方面的应用。同时,详细阐述了Go语言的安装步骤,包括下载和配置环境。
摘要由CSDN通过智能技术生成

1. 认识go语言

1.1 背景

Go语言是一个开源的编程语言,它能让构造简单,可靠且高效的软件变得容易。go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Lan Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go1稳定版本。现在Go的开发已经是完全开放的,并且有一个活跃的社区。

1.2 语言特色

1) 简洁,快速,安全

简洁:Go的语法简单,学习曲线较低,容易上手。

速度:Go是编译型语言,代码的执行速度非常快。

安全:Go提供了内存安全的内存模型,能够防止数据竞争。

2) 并行,有趣,开源

并发编程:Go内建了go routine的概念,它可以轻松地编写并发程序。通过go routine(协程),你可以在一个线程(或一个操作系统的进程)中并发地运行多个任务。

routine(协程):这是一个和线程不完全相同的概念。协程允许开发者以同步的方式编写代码,但在底层却能够以异步的方式执行。举个例子,协程可以启动10万个,然后对应的底层线程数量是可以控制的(通过编程控制),协程启动10万个,对内存没啥消耗。但是线程启动10万个,按照每个平均2M的堆栈空间(操作系统默认分配)计算,计算机内存成本会非常高。协程是程序员代码根据业务逻辑进行调度控制的,线程和进程是操作系统进行调度控制的。协程是一个循环,会不停的执行(如果程序没有控制时钟或者事件选择的话),运行阶段,协程之间是线程公用的,线程不安全的,你也可以认为协程就是某一段时间的某个线程的执行路径。

3) 内存管理,数组安全,编译迅速

自动垃圾回收:go拥有自动的垃圾回收机制,这就意味着你不需要担心内存管理的问题。

编译至一个可执行文件:Go可以将代码编译为一个独立的可执行文件,这使得部署和分发应用程序变得简单。

静态类型:Go是一种静态类型的语言,这就意味着所有的变量和表达式都有一个在编译时就确定的类型。

标准库:Go的标准库非常丰富,提供了网络编程、文件I/O、数据库访问等众多的功能。

1.3 用途

1) 服务器编程,以前你如果使用C或者C++做的那些事情,用Go来做很合适,例如处理日志、数据打包、虚拟机处理、文件系统等。

2) 分布式系统、数据库代理器、中间件等,例如Etcd。

3)网络编程,这一块目前应用最广,包括Web应用、API应用、下载应用,而且Go内置的net/http包基本上把我们平常用到的网络功能都实现了。

4)数据库操作

5)云平台,目前国外很多云平台在采用Go开发,CloudFoundy的部分组建,前VMare的技术总监自己出来搞的apcera云平台。

6)游戏服务端的开发。

一些使用go语言开发的框架:

Nsq:Nsq 是由Go语言开发的高性能、高可用消息队列系统,性能非常高,每天能处理数十亿条的消息;

Docker:基于lxc的一个虚拟打包工具,能够实现PAAS平台的组建。

Packer:用来生成不同平台的镜像文件,例如VM、vbox、AWS等,作者是vagrant的作者

Skynet:分布式调度框架

Doozer:分布式同步工具,类似ZooKeeper

Heka:mazila开源的日志处理系统

Cbfs:couchbase开源的分布式文件系统

Tsuru:开源的PAAS平台,和SAE实现的功能一模一样

Groupcache:memcahe作者写的用于Google下载系统的缓存系统

God:类似redis的缓存系统,但是支持分布式和扩展性

Gor:网络流量抓包和重放工具

2. 安装步骤

2.1 下载go语言安装包

go语言支持的系统:

  • Linux
  • FreeBSD
  • Mac OS X(也称为 Darwin)
  • Windows

安装包下载地址为:All releases - The Go Programming Language

如果打不开可以使用这个地址:All releases - The Go Programming Language

以下是每个系统对应的包名:

Windowsgo1.4.windows-amd64.msi
Linuxgo1.4.linux-amd64.tar.gz
Macgo1.4.darwin-amd64-osx10.8.pkg
FreeBSDgo1.4.freebsd-amd64.tar.gz

是什么系统下载对应安装包即可

2.2 Linux/FreeBSD/Mac 系统

1. 下载二进制包:go1.4.linux-amd64.tar.gz

2.将下载的二进制包解压至 /usr/local目录(mac系统下载后双击安装即可,修改环境变量)

tar -C /usr/local -xzf go1.4.linux-amd64.tar.gz

3. vim编辑 ~/.bash_profile 或者 /etc/profile,输入i ,切换成insert模式,并将以下命令添加该文件的末尾,然后点击esc,输入:wq! 保存退出

export PATH=$PATH:/usr/local/go/bin

4. 添加后需要执行

source ~/.bash_profile
或
source /etc/profile

2.3 Windows系统

Windows 下可以使用 .msi 后缀(在下载列表中可以找到该文件,如go1.4.2.windows-amd64.msi)的安装包来安装。

默认情况下 .msi 文件会安装在 c:\Go 目录下。你可以将 c:\Go\bin 目录添加到 Path 环境变量中。添加后你需要重启命令窗口才能生效。

2.4 安装完成测试

输入 go version

mac系统显示:go version go1.22.1 darwin/arm64 表示安装成功

写一个简单的go程序测试一下:

package main

import "fmt"

func main() {
	/* 这是我的第一个简单的程序 */
	fmt.Println("Hello, World!")
}

 输出 : Hello, World!

大功告成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值