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

golang
golang专题下共有 14262 篇文章
  • Golang数组与切片区别解析
    Golang数组与切片区别解析
    Go语言中数组和切片的区别在于:1.数组是固定长度的数据结构,其长度是类型的一部分,内存中直接保存元素本身;2.切片是对数组的封装,包含指向底层数组的指针、长度和容量,提供动态扩容能力;3.使用方式上,数组长度不可变,而切片可通过append动态追加元素;4.扩容时切片会创建新数组并复制数据,影响性能需注意预分配容量;5.传参时数组为值拷贝不影响原数据,而切片修改会影响原数组;6.数组适合生命周期短且大小固定的场景,切片更适合动态集合。
    Golang· Go教程   |  9个月  |   golang 数组 切片 扩容 内存结构 426浏览 收藏
  • Golanggoto语句使用规范与跳转限制
    Golanggoto语句使用规范与跳转限制
    goto在Go语言中受到限制,因为它容易导致代码结构混乱,降低可读性和维护性。Go语言设计强调简洁和结构化控制流,因此严格限制goto的使用场景。goto只能在函数内部跳转,且不能跨越变量声明。其主要用途包括跳出多层循环、集中处理错误和实现状态机。使用时应遵循规范:仅在必要时使用、避免向前跳转、保持代码清晰并避免跨越变量声明。尽管goto本身不会显著影响性能,但滥用可能导致代码难以优化,间接影响执行效率。
    Golang· Go教程   |  9个月  |   golang 限制 代码结构 goto语句 使用规范 417浏览 收藏
  • Golang多环境部署,GoReleaser工具链分享
    Golang多环境部署,GoReleaser工具链分享
    如何利用GoReleaser自动化构建和发布流程?1.使用goreleaser.yaml配置文件定义构建目标平台、编译参数、版本控制策略和发布渠道;2.配置builds字段指定平台和架构,如Linux、Windows、macOS及amd64、arm64;3.设置归档命名规则、校验和生成、快照版本及变更日志;4.执行goreleaserrelease命令自动完成编译、打包、发布等操作。如何与Docker集成?5.在配置中添加docker项,定义镜像标签、Dockerfile路径、构建标签并启用推送;6.编写
    Golang· Go教程   |  9个月  |   golang docker DevOps 自动化部署 GoReleaser 234浏览 收藏
  • Golangdefer延迟执行用法解析
    Golangdefer延迟执行用法解析
    defer关键字在Go语言中的作用是将函数调用延迟到当前函数返回前执行。1.基本用法是通过defer后接函数调用实现延迟执行,即使遇到return或panic也会执行,适用于资源释放、关闭连接等操作;2.在文件操作中常用defer确保文件关闭,避免资源泄露,多个defer按后进先出顺序执行;3.defer结合recover可用于捕获异常,防止程序崩溃,但recover只能在defer函数中生效;4.实际开发中常与匿名函数结合使用,实现灵活收尾或调试记录功能,同时需注意参数求值时机和调用顺序问题。
    Golang· Go教程   |  9个月  |   golang defer recover 延迟执行 资源释放 160浏览 收藏
  • Golang提升DevOps可靠性,蓝绿部署代码详解
    Golang提升DevOps可靠性,蓝绿部署代码详解
    蓝绿部署是一种通过维护两个独立环境实现零停机更新的策略。其核心在于新版本先部署到非活跃环境,测试通过后切换流量以实现无缝更新。使用Golang实现蓝绿部署时,可通过结构体模拟环境状态,并编写部署与流量切换逻辑。实际部署中需关注以下关键点:1.使用基础设施即代码工具保障环境一致性;2.采用兼容或可逆的数据库迁移策略;3.根据平台选择合适的流量切换方式如KubernetesService、云服务TargetGroup或Nginx配置;4.部署后实施健康检查与监控告警机制。此外还需考虑负载均衡配置、日志记录、自
    Golang· Go教程   |  9个月  |   golang DevOps 蓝绿部署 部署可靠性 流量切换 409浏览 收藏
  • Golang循环依赖解决与包结构优化技巧
    Golang循环依赖解决与包结构优化技巧
    循环依赖指两个或多个包互相引用,导致编译报错。解决方法包括:1.合并紧密关联的包;2.提取公共接口到新包;3.使用接口实现解耦;4.重新设计包结构。识别方式有:查看编译器报错、使用golist命令分析、借助可视化工具。重构时需注意保持兼容性、遵循单一职责原则、提升可测试性、使用清晰命名,并可通过goimports辅助。预防措施包括设计阶段考虑依赖关系、减少不必要依赖、使用接口解耦、遵循依赖倒置原则及定期检查依赖。
    Golang· Go教程   |  9个月  |   golang 接口 解耦 循环依赖 包结构重构 357浏览 收藏
查看更多
课程推荐
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
  • Go语言课程Gin框架实战
    Go语言课程Gin框架实战
    Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于 martini 但拥有更好性能的API框架,由于 httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。
    339次学习
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
    205次学习
  • Go编程基础视频教程
    Go编程基础视频教程
    Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言。我们收集了这套《Go编程基础视频教程》,希望能够帮助大家更好的学习go语言。
    168次学习
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
    129次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码