GO语言实战一 Go简介

Phylicia ·
更新时间:2024-11-13
· 811 次阅读

为什么使用GO

go 高性能 且 开发速度快

Go 语言使用了更加智能的编译器,并简化了解决依赖的算法,最终提供了更快的编译速 度。 编译 Go 程序时,编译器只会关注那些直接被引用的库,而不是像 Java、C C++那 样,要遍历 依赖链中所有依赖的库。因此,很多 Go 程序可以在 1 秒内编译完。在现代硬 件上,编译整个 Go 语言的源码树只需要 20 秒

go 语法简洁,类型系统简单且高效,使用接口作为代码复用的基础模块

编译速度快,减少了构建时间

内置并发机制、垃圾回收器

go并发

Go 语言对并发的支持是这门语言最重要的特性之一。goroutine 很像线程,但是它占用的 内存远少于线程,使用它需要的代码更少。通道(channel)是一种内置的数据结构,可以让 用户在不同的 goroutine 之间同步发送具有类型的消息。这让编程模型更倾向于在 goroutine 之间发

goroutine
goroutine 是可以与其他goroutine 并行执行的函数,同时也会与主程序(程序入口)并行执行。 go会使用同一个线程执行多个goroutine。
特点:占用资源少 通道
通道是一种数据结构,可以让 goroutine 之间进行安全的数据通信。通道可以帮用户避免其 他语言里常见的共享内存访问的问题。
通道提供了一种新模式,从而保证并发修改时的数据安全。通道这一模 式保证同一时刻只会有一个 goroutine 修改数据
通道并不提供跨 goroutine 的数据访问保护机制
在这里插入图片描述 go语言类型系统

Go 开发者使用组合(composition)设计模式,只需简单地将一个类型嵌入到另一个类型,就能 复用所有的功能
Go 语言提供了灵活的、无继承的类型系统,无需降低运行性能就能最大程度上复用代码。 这个类型系统依然支持面向对象开发,但避免了传统面向对象的问题

类型简单
go不仅支持in、string等内置类型,还支持用户自定义类型 go 接口对一组行为建模
在 Go 语言中,如果一个类型实现了一个接口的所有方法,那么这个类型的实 例就可以存储在这个接口类型的实例中,不需要额外声明。
在这里插入图片描述 内存管理

Go 语言拥有现 代化的垃圾回收机制,让程序员更专注于有趣的事情。
后边做专题分析记录

go playground

可以做练习的网站 在线运行go脚本
go playground


作者:coder~



实战 GO go语言实战 go语言

需要 登录 后方可回复, 如果你还没有账号请 注册新账号