Golang
文章平均质量分 77
d3y1
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Golang-18项目实战_云原生与Serverless
本文介绍了Golang在云原生和Serverless领域的实战应用,重点围绕Kubernetes、Knative、OpenFaaS和Dapr等技术。首先概述云原生架构的核心技术栈和设计原则,包括容器化、微服务、可观测性等关键概念。随后详细讲解Kubernetes基础知识,通过YAML示例展示Deployment、Service和Ingress的完整配置。最后提供Go应用Kubernetes化的代码实现,包含健康检查、指标监控和API路由等核心功能,为构建云原生应用提供实践指导。原创 2025-10-17 09:34:35 · 310 阅读 · 0 评论 -
Golang-17项目实战_微服务与分布式
本文介绍了Golang微服务架构的核心概念与实践,重点讲解了服务发现与注册机制。内容涵盖: 微服务与单体架构对比,通过Mermaid图表展示架构差异 微服务设计原则:单一职责、服务自治、去中心化等 详细实现etcd服务发现: 服务注册与注销 服务发现与监听 租约机制保证服务健康 简要提及Consul服务发现方案 文章提供了完整的Golang代码示例,展示如何构建基于etcd的微服务注册发现系统,包括服务注册、发现、状态监控等核心功能实现。原创 2025-10-17 09:31:07 · 772 阅读 · 0 评论 -
Golang-16项目实战_从0到1开发RESTful后端
本文介绍了一个基于Golang的RESTful后端开发实战项目。项目采用分层架构设计,包含API Gateway、表现层、应用层、领域层和基础设施层。项目结构清晰,包含domain、application、infrastructure等多个模块。在领域驱动设计(DDD)方面,详细展示了用户聚合根的定义,包含实体、值对象、枚举等核心概念,并实现了构造函数、领域方法、验证逻辑等功能。项目还涉及单元测试、Docker化部署等实践内容,是一个完整的Golang后端开发指南。原创 2025-10-17 09:27:19 · 564 阅读 · 0 评论 -
Golang-15项目实战_Web开发
本文介绍了Golang主流Web框架对比及实战开发。首先对比了Gin、Fiber、go-zero等框架的特点、性能及适用场景,并提供了选择建议。然后重点演示了Gin框架的实战应用,包括基础路由配置和完整的RESTful API开发示例。API示例涵盖了用户管理功能(增删改查),展示了模型定义、请求验证、状态码处理和JSON响应等核心功能。文章通过代码示例说明了如何构建规范的API接口,包括参数绑定、错误处理和业务逻辑组织。原创 2025-10-16 12:12:49 · 353 阅读 · 0 评论 -
Golang-14高阶编程_测试与基准
本文介绍了Go语言高阶测试编程技术,主要包括单元测试、Table-Driven测试、基准测试和模糊测试。文章首先讲解了Go内置测试框架的基础用法,包括测试函数编写和常用测试命令。然后重点介绍了Table-Driven测试模式,通过结构体定义测试用例表,实现高效、清晰的测试代码组织。示例中展示了如何测试带错误处理的函数和递归函数,包括正常和异常情况的测试用例设计。最后简要提及了基准测试和模糊测试的概念。这些技术能帮助开发者编写更健壮、可维护的Go代码。原创 2025-10-16 12:09:59 · 431 阅读 · 0 评论 -
Golang-13高阶编程_内存分配及GC底层原理
本文深入探讨Go语言的内存管理和垃圾回收机制。Go采用自动内存管理,通过三级分配器(mcache、mcentral、mheap)实现高效内存分配,支持不同大小的对象分类处理(tiny<16B、small<32KB、large≥32KB)。内存布局包含栈、堆、BSS段、数据段和代码段等区域。垃圾回收采用并发标记清除算法,结合三色标记法和写屏障技术实现高效回收。理解这些底层原理有助于优化Go程序性能,特别是在处理大规模数据和高并发场景时。原创 2025-10-16 12:07:41 · 313 阅读 · 0 评论 -
Golang-12高阶编程_网络编程
本文介绍了Go语言中的网络编程基础,包括网络协议层次、端口号概念、IP地址分类和OSI七层模型等核心概念。内容涵盖从应用层到物理层的协议详解,如HTTP、TCP、UDP等,并展示了如何通过Go代码获取本机网络信息。文中还对比了TCP/IP四层模型与OSI模型的对应关系,为构建高性能网络应用程序提供了理论基础和实践指导。原创 2025-10-16 12:04:09 · 318 阅读 · 0 评论 -
Golang-11高阶编程_异步编程
本文介绍了Go语言中的异步编程技术,包括同步与异步的区别、常见异步编程模型及实现方式。通过代码示例对比了同步和异步操作的性能差异,展示了异步编程的优势。文章详细讲解了回调模型、Promise/Future模型和反应式编程模型在Go中的实现方法,并提供了相应的代码示例。这些技术能帮助开发者构建高性能的异步应用程序,充分利用系统资源提升程序效率。原创 2025-10-16 12:01:33 · 441 阅读 · 0 评论 -
Golang-10高阶编程_并发编程
本文摘要: Go语言并发编程是其核心特性,采用了CSP(Communicating Sequential Processes)模型。文章深入解析了并发与并行的区别,通过代码示例展示了Goroutine的创建与管理、Channel通信机制以及Select多路复用。重点包括:1)Goroutine作为轻量级线程的实现原理;2)通过Channel实现"通信共享内存"而非"共享内存通信"的并发模式;3)CSP模型的核心概念(进程、通道、通信)。实战示例演示了如何高效创建大量G原创 2025-10-16 11:57:29 · 546 阅读 · 0 评论 -
Golang-09高阶编程_同步原语
本文介绍了Go语言中的同步原语和并发安全概念。主要内容包括: 竞态条件和数据竞争问题,通过计数器示例展示如何用sync.Mutex保护共享数据 Go内存模型和happens-before关系,解释同步原语如何保证内存可见性 sync.Once实现单例模式、原子操作和sync/atomic包的应用 errgroup的错误处理机制 各种同步原语的适用场景和性能特点分析 文章通过多个代码示例(如银行账户转账)演示了如何正确使用同步机制来保证并发安全,并介绍了使用Go竞态检测器(-race)来发现数据竞争问题。原创 2025-10-16 11:54:31 · 516 阅读 · 0 评论 -
Golang-08高阶编程_函数式编程与高级内置
本文介绍了Go语言中的函数式编程核心概念,包括函数作为一等公民、高阶函数、闭包和泛型等特性。主要内容涵盖:1) 函数可赋值变量、作为参数和返回值;2) Map/Filter/Reduce等高阶函数实现;3) 函数柯里化与组合技巧;4) 泛型函数式工具库开发。通过代码示例展示了如何利用Go的特性构建函数式编程范式,包括类型安全的泛型集合操作和链式调用等高级用法。原创 2025-10-16 11:52:52 · 403 阅读 · 0 评论 -
Golang-07高阶编程_结构体与方法_接口_类型断言
本文深入探讨了Go语言中结构体、方法和接口的高级用法,主要包括以下内容: 结构体嵌入与组合:通过匿名嵌入实现类似继承的效果,展示多级嵌入和字段/方法提升的特性 结构体方法:演示方法定义、指针接收者以及方法提升机制 接口系统:讲解接口定义、实现和组合,通过实际案例展示面向接口编程 类型系统对比:通过组合模式示例展示Go语言"组合优于继承"的设计哲学 文章通过丰富的代码示例,详细解析了如何设计可扩展的接口系统、使用结构体标签以及实现多态行为,帮助开发者掌握Go语言类型系统的高级特性。原创 2025-10-16 11:51:28 · 263 阅读 · 0 评论 -
Golang-06高阶编程_反射_结构体标签_代码生成
本文介绍了Go语言高阶编程中的反射机制、结构体标签和代码生成技术。主要内容包括:1) 反射基础概念,通过reflect包实现运行时类型检查和值操作;2) 反射常用方法,如动态调用函数、创建实例等;3) 结构体标签的定义与使用,结合反射实现JSON/XML序列化;4) go generate工具和AST包进行代码生成与分析。文章还探讨了反射的性能开销、类型安全等限制,并提供了创建自定义验证器等实战案例。这些技术为Go开发者提供了更灵活的编程方式,适用于需要动态处理类型的场景。原创 2025-10-16 11:49:02 · 294 阅读 · 0 评论 -
Golang-05基础编程_文件和目录_异常处理_自定义异常_日志打印
本文介绍了Golang基础编程中的文件和目录操作、异常处理及日志打印。主要内容包括:1) 文件基本操作如创建、读写、复制和随机访问;2) 高级文件操作如缓冲读取、文件信息获取;3) 文件权限管理如设置权限模式、检查权限;4) 目录操作。示例代码演示了各种文件操作方法,包括逐行读取、文件复制、权限设置等。同时介绍了Go的错误处理机制和日志记录实践,为开发者提供了全面的文件操作指南。原创 2025-10-16 11:46:26 · 399 阅读 · 0 评论 -
Golang-04基础编程_模块和包管理
本文介绍了Go语言的模块和包管理系统。主要内容包括:1) Go Modules的概念和基本用法,如初始化模块、管理依赖和版本控制;2) 包的声明、导入规则和可见性控制;3) 如何创建自定义包及标准包结构。通过示例代码展示了go.mod文件配置、依赖管理命令、包的导出规则以及实用工具包的实现。文章还涵盖了代理配置、私有仓库设置等实用技巧,为Go开发者提供了完整的模块和包管理指南。原创 2025-10-16 11:44:39 · 408 阅读 · 0 评论 -
Golang-03基础编程_控制流与函数
这篇Golang编程教程介绍了控制流和函数的基础知识,主要包含以下内容: 条件语句:详细讲解了if语句的各种形式(基本if、if-else、简短声明)和switch语句(基本用法、无条件switch、类型切换、fallthrough等)。 循环语句:介绍了for循环的多种写法(基本for、省略初始化的for、无限循环、嵌套循环)、循环控制语句(continue/break)以及range遍历。 函数部分:展示了函数定义、调用、参数传递、多返回值、可变参数、defer语句等核心概念。 代码示例:每个知识点都配原创 2025-10-16 11:43:48 · 368 阅读 · 0 评论 -
Golang-02基础编程_基本数据类型与复合数据类型
本文介绍了Go语言的基本数据类型和复合数据类型。基本数据类型包括布尔型(bool)、数字类型(整型、浮点型、复数型)和字符串(string),详细展示了各类型的声明、初始化和操作方法。复合数据类型部分重点讲解了数组的使用,包括声明方式、初始化和访问方法。文章通过丰富的代码示例,帮助读者掌握Go语言核心数据类型的基础知识,为后续学习更复杂的数据结构打下基础。原创 2025-10-16 11:42:47 · 330 阅读 · 0 评论 -
Golang-01基础编程_开发环境准备
本文介绍了Go语言的基础开发环境准备。首先概述了Go语言的特点(简洁高效、并发支持、快速编译等)和应用领域(云计算、网络编程等)。然后详细讲解了Windows、macOS和Linux系统下的Go安装步骤,以及环境变量配置(GOPATH、Go Modules)。文章还介绍了Go项目结构、推荐的开发工具(如VS Code)和常用命令行工具。最后通过一个简单的"Hello, Go!"示例程序,展示了Go语言的基本语法结构,包括包声明、导入和函数定义。本文适合初学者快速搭建Go开发环境并了解基础原创 2025-10-16 11:28:43 · 731 阅读 · 0 评论
分享