【Go语言】Golang保姆级入门教程 Go初学者介绍chapter1

Golang

开山篇

Golang的学习方向

区块链研发工程师: 去中心化 虚拟货币 金融

Go服务器端、游戏软件工程师 : C C++ 处理日志 数据打包 文件系统 数据处理 很厉害 处理大并发

Golang分布式、云计算软件工程师:盛大云 cdn 京东 消息推送 分布式文件系统

2、Golang的应用领域

  • 区块链应用:区块链也是分布式账本技术 是一种互联网数据库技术 特点是去中心化 公开透明 就是每个人都可以参与数据库记录
  • 后端服务器端的开发:美团后台流量支撑程序(排序 推荐 搜索 负载均衡 cache 容错 按条件分流 统计运行指标) 仙侠道

3、云计算/云服务后台应用

  • 盛大云CDN 调度系统、分发系统、监控系统、短域名服务 Golang的计算能力强

大并发 计算能力

Golang诞生原因

  1. 计算机硬件技术更新快于软件
  2. 软件维护成本高(1.风格不统一 2.计算能力不够 3,处理大并发不够好)
  3. C/C++编译速度慢 内存泄露

Go语言特点

静态编译语言的安全和性能 动态语言开发维护的高效率 Go = C + Python

  1. C中继承理念 包括表达式语法,控制结构,基础数据类型、调用参数传值,指针
  2. 引入包的概念 一个文件都属于一个包
  3. 垃圾回收机制 内存自动回收
  4. 天然并发 语言层面支持并发,实现简单 goroutine, 轻量级线程 可以实现大并发处理,高效利用多核 CPS并发 有效利用多核多CPU 上千上万个并发都可以
  5. 吸收了管道通信机制 channel
  6. 函数可以有多个返回值
  7. 创新:切片slice 动态数组 集合 延迟执行defer

Gotest (MAC环境下)

MAC下面安装GO开发环境

brew install go之后 又重新brew reinstall go

使用go version可以直接看到go 的版本

MAC 安装教程

https://blog.csdn.net/sinat_34626178/article/details/131899430?spm=1001.2014.3001.5502

Golang执行过程

go build -o 文件名称 可以指定文件名称 有错误编译语句会报错

Go 常见开发问题

Go语言的注释 就是常见的C++注释 养成注释的良好编程习惯 代码需要有正确的缩进和空白shift + tab

go.fmt -w main.go 运算符左右加一个空格

相关推荐
jyOverQ8 小时前
RabbitMQ 消息积压怎么办?Prefetch、消费者并发与扩容
分布式·后端·rabbitmq
2601_9620715713 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
淡海水14 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
CS_Zero15 小时前
C语言sizeof是函数吗?
c语言·开发语言
东风破_15 小时前
从跨域到 WebSocket:前端跨域方案、SSE 与双向实时通信详解
前端·后端
-今昭-16 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
行百里er16 小时前
Gateway 上别硬塞 MVC:DeferredImportSelector 看菜下锅
spring boot·后端·开源
名字还没想好☜17 小时前
Java 遍历时删元素抛 ConcurrentModificationException:fail-fast 原理与三种正确删法
后端
IT_陈寒17 小时前
React Hooks闭包陷阱差点让我加班到凌晨
前端·人工智能·后端
黑马程序员毕设17 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设