当前位置:首页 > 文章列表 >golang

golang
golang专题下共有 1327 篇文章
  • Golang状态模式实现与接口管理解析
    Golang状态模式实现与接口管理解析
    状态模式在Golang中通过定义状态接口、实现具体状态类型、使用上下文对象管理状态转换来实现,适用于网络连接管理、订单流程、游戏角色控制等具有多状态和状态转换的场景,可通过状态合并、表驱动、职责链或与策略模式结合来避免状态爆炸,并支持通过CanTransition方法、状态转换表或监听器机制实现复杂的转换逻辑,从而在保证代码清晰的同时灵活应对复杂业务需求。
    Golang· Go教程   |  5天  |   golang 接口 状态模式 状态转换 状态爆炸 340浏览 收藏
  • Golang大文件读取OOM问题及流式处理方法
    Golang大文件读取OOM问题及流式处理方法
    解决Golang大文件读取OOM问题的核心方法是使用流式处理以避免一次性加载整个文件到内存。1.使用bufio.Scanner进行按行或自定义分隔符的文本流式读取;2.利用io.Reader配合bufio.Reader进行缓冲分块读取,适用于二进制文件或更细粒度控制;3.处理压缩文件时结合compress/gzip等包进行解压流式读取;4.根据文件格式选择合适的解析库如encoding/csv、encoding/json或encoding/binary进行结构化解析;5.合理设置缓冲区大小以平衡性能与内存
    Golang· Go教程   |  2个月  |   golang 流式处理 大文件读取 bufio.Scanner OOM 339浏览 收藏
  • GolangChannel实现观察者模式详解
    GolangChannel实现观察者模式详解
    观察者模式在Go语言中可通过channel结合事件驱动实现,其核心在于构建事件中心管理事件发布与订阅。1.定义事件结构Event包含主题和数据;2.Observer为接收事件的channel;3.EventCenter维护观察者列表及发布通道;4.初始化事件中心并启动后台监听;5.通过Subscribe注册观察者至特定主题;6.通过Publish方法发送事件至channel触发通知;7.注意设置channel缓冲、关闭机制、命名规范及错误处理以优化系统稳定性与可维护性。
    Golang· Go教程   |  1个月  |   golang 观察者模式 339浏览 收藏
  • Mac安装Golang教程:快速搭建Go开发环境
    Mac安装Golang教程:快速搭建Go开发环境
    安装Mac系统Golang的步骤为:1.去官网下载对应芯片架构的.pkg安装包;2.双击安装包按提示完成安装,默认路径为/usr/local/go;3.配置环境变量,设置GOROOT为/usr/local/go,GOPATH为自己指定的工作目录(如~/go),并将$GOROOT/bin和$GOPATH/bin添加到PATH中;4.执行source命令使配置生效;5.验证安装,通过goversion查看版本,并运行一个简单程序测试环境是否正常。管理多个项目推荐使用GoModules,在项目目录下执行gomo
    Golang· Go教程   |  2个月  |   golang mac系统 338浏览 收藏
  • Golang反射机制详解与使用技巧
    Golang反射机制详解与使用技巧
    Golang反射机制的核心在于reflect.Type和reflect.Value。1.通过reflect.TypeOf()和reflect.ValueOf()获取变量类型和值;2.使用reflect.Value访问结构体字段;3.修改值前需确保其可设置性,通常需传入指针并调用Elem();4.可动态调用方法,通过MethodByName()获取方法并使用Call()执行。为避免性能问题,应减少使用场景、缓存反射结果、避开热点代码并考虑代码生成。反射的底层依赖编译时生成的元数据,包含类型信息及值的指针。常
    Golang· Go教程   |  1个月  |   golang 性能 反射 reflect.Type reflect.Value 338浏览 收藏
  • Golang大端小端处理:binary.ByteOrder用法详解
    Golang大端小端处理:binary.ByteOrder用法详解
    Golang处理大小端问题主要依赖encoding/binary包,通过binary.ByteOrder接口及其实现解决字节序差异。核心在于使用binary.BigEndian和binary.LittleEndian确保数据在网络传输中正确解析。1.不同架构存储多字节数据顺序不同,网络协议采用大端,需根据本地机器字节序转换;2.使用binary.Write和binary.Read方法结合BigEndian或LittleEndian实现字节序转换;3.可通过unsafe包检测本地机器字节序;4.网络编程常见
    Golang· Go教程   |  1个月  |   golang 网络编程 encoding/binary 字节序 大端小端 338浏览 收藏
查看更多
课程推荐
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
  • Go语言课程Gin框架实战
    Go语言课程Gin框架实战
    Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于 martini 但拥有更好性能的API框架,由于 httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。
    338次学习
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
    204次学习
  • Go编程基础视频教程
    Go编程基础视频教程
    Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言。我们收集了这套《Go编程基础视频教程》,希望能够帮助大家更好的学习go语言。
    167次学习
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
    129次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码