ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Go语言基础(1)

2021-08-05 12:32:16  阅读:260  来源: 互联网

标签:语言 CGO 基础 go build Go GO


一、GO语言了解

1.1、区块链

区块链应用领域

金融领域: 所有人的财产证明,将不只有银行说了算,你的个人价值将永远保值!

司法领域: 每个人的不良记录将永远不能被销毁,树正公民良德!

行政领域: 比如:我们每个人的纳税。但是税到底花在什么地方,花多钱并不知道,让国家税透明化,每笔交易记录去中心化,有助于彻底解决腐败。

人事领域: 市场大量存在假学历,假履历。如果国家会出来去中心化的每人的履历区块链系统,那么每人的教育经历将永远无法造假,人才市场将更加公正。

商业领域: 双11商品限时秒杀!所有的秒杀记录在区块链里,防止内部员工内定。

1.2、合约

传统的合约会受到各种维度的影响。

自动化维度 ---- 条件满足,交易未必会继续。

主客观维度 ---- 公证人的主观意识影响合约规则。

执行时间维度 ---- 整个合约执行过程繁琐,浪费时间。

违约惩罚维度 ---- 有人违约,未必会受到惩罚,难以追究责任。

智能合约解决了传统合约中的信任问题,大幅降低了信任成本。

1.3、Go语言

Go是一种开源的程序设计语言,它意在使得人们能够方便地构建简单、可靠、高效率的软件。GO语言借鉴了Python等其它编程语言简单,易学,生产效率高,同时GO语言专门针对多处理器(多核CPU,windows下的多核CPU)系统的程序进行了优化(让每核CPU都能够执行GO语言开发的程序),这样使用GO语言开发的程序运行的速度可以媲美C或C++开发程序的速度。
在这里插入图片描述
Go语言是一门编译型语言
在这里插入图片描述

1.4、Go语言优势

1、运行速度快。简单易学。

2、薪水待遇高。

3、适合区块链开发。

4、跨平台。

5、丰富的标准库(指令),Go 目前已经内置了大量的库,特别是网络库韭常强大。

6、Go里面也可以直接包含C代码,利用现有的丰富的C库。

7、语言层面支持并发,这个就是Go最大的特色,天生的支持并发。所谓并发,所有正在运行的程序轮流使用CPU,每个程序允许占用CPU的时间非常短(比如10毫秒),这样用户根本感觉不出来CPU是在轮流为多个程序服务,就好象所有的程序都在不间断地运行一样。并发好处就是可以运行多个程序,并不卡顿。中。
在这里插入图片描述

1.5、GO语言应用。

1、网络编程,这一块目前应用最广,例如网站开发。

2、服务器编程,例如:处理日志,处理文件。(在网站开发的过程中都会涉及到)。

3、区块链开发。

1.6、环境安装

Go官网:https://golang.google.cn/

Go语言标准库中文文档:https://studygolang.com/pkgdoc
在这里插入图片描述
在这里插入图片描述

安装成功

1.7、配置GOPATH

● GOPATH是一个环境变量,用来表明你写的go项目的存放路径(工作目录)。

● GOPATH路径最好只设置一个,所有项目代码都放到GOPATH 的src 目录下。(1.12后面就不需要配置或支持配置多个)

● 装好之后系统默认有个 GOPATH(如下),删除就好,自己配置(系统变量中配置)。

平台 			GOPATH默认值				举例

Windous		%USERPROFILE%/go		C:\[Users]用户名\go

Unix			SHOME/go				/home/用户名/go

在这里插入图片描述

1.8、GO项目结构

1.8.1、个人开发

在这里插入图片描述

1.8.2、多人开发

在这里插入图片描述

1.8.3、企业开发

在这里插入图片描述

1.9、GO常用命令

1.9.1、编译

● go build + 目标文件或文件夹(项目路径),默认从SRC目录下找

● 直接在项目的目录下 执行 go build

● go build -o 编译后文件名(Win系列加后缀,默认是执行文件名)

1.9.2、编译后执行

● 直接输入完整文件名(加后缀.exe)

1.9.3、编译加执行

● go run 文件路径(加后缀)。像执行脚本一样执行GO代码。

1.9.4、go install

① 先编译得到一个可执行文件

② 将可执行文件拷贝到“GOPATH/bin”

1.9.5、跨平台编译

● Windows指定目标操作系统的平台和处理器架构即可

▶ Linux

SET CGO_ENABLED=0 	//禁用CGO

SET GOOS=Linux 	 //目标平台是Linux

SET GOARCH=amd64  //目标处理器架构是amd64

go build

▶ Mac

SET CGO ENABLED=0

SET G00S = darwin

SET GOARCH and64

go build

● Mac下编译Windows和Linux平台64位 可执行程序

CGO_ENABLED=0 GOOS=linux  GOARCH=amd64 go build

CGO_ENABLED=G G00S=windows GOARCH=and64 go build

● Linux下编译Windows和Mac平台64位 可执行程序

CGO_ENABLED=0 GOOS=darwin  GOARCH=amd64 go build

CGO_ENABLED=G G00S=windows GOARCH=and64 go build

标签:语言,CGO,基础,go,build,Go,GO
来源: https://blog.csdn.net/mocoll/article/details/119410772

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有