GO语言实战一 Go简介

为什么使用GO

  1. go 高性能 且 开发速度快

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

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

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

go并发

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

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

go语言类型系统

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

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

内存管理

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

go playground

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值