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

golang
golang专题下共有 328 篇文章
  • Golangreflect修改map元素技巧详解
    Golangreflect修改map元素技巧详解
    在Golang中,可通过reflect包的SetMapIndex方法修改map元素,适用于运行时动态操作键值对。修改基本类型map直接使用SetMapIndex即可;对于结构体值类型,因MapIndex返回不可设置的拷贝,需取出后修改再回写;若存储的是结构体指针,则可通过Elem()获得可设置的字段并直接修改。此过程需理解可设置性(CanSet)和可寻址性(CanAddr),避免对临时值进行修改导致panic。相比直接操作,reflect性能较低且丧失部分编译时类型安全,适合元编程场景如序列化、ORM等。
    Golang· Go教程   |  2星期  |   golang reflect 258浏览 收藏
  • Golang值类型内存分配详解
    Golang值类型内存分配详解
    值类型不一定分配在栈上,Go通过逃逸分析决定变量内存位置:若局部变量被外部引用则分配在堆,否则在栈。例如返回结构体指针会导致其逃逸到堆,而返回值则不逃逸。使用gobuild-gcflags="-m"可查看逃逸分析结果,优化内存分配。
    Golang· Go教程   |  2星期  |   golang 逃逸分析 值类型内存分配 398浏览 收藏
  • Golang中间件拦截请求技巧
    Golang中间件拦截请求技巧
    中间件通过包装http.Handler实现请求拦截,可在处理前后执行日志、认证等操作。1.基本结构为接收并返回http.Handler的函数,利用http.HandlerFunc封装逻辑。2.多个中间件可链式调用,形成嵌套处理流程,如LoggingMiddleware(AuthMiddleware(handler))。3.结合gorilla/mux可全局或按路由组注册中间件,r.Use()添加全局,子路由器可独立使用。4.高级场景可通过包装ResponseWriter捕获状态码与响应时间,实现精细化监控。
    Golang· Go教程   |  2星期  |   golang 中间件 链式调用 http.Handler 请求拦截 159浏览 收藏
  • Golang实现简易文件管理教程
    Golang实现简易文件管理教程
    答案:Golang通过os、io、filepath和net/http等标准库可实现文件增删改查、目录遍历及上传下载功能,结合http.FileServer可快速搭建带UI的文件服务系统,并需注意路径安全、权限控制与日志记录。
    Golang· Go教程   |  2星期  |   golang 文件操作 文件管理系统 标准库 HTTP文件服务 268浏览 收藏
  • Golang条件表达式简化技巧分享
    Golang条件表达式简化技巧分享
    Go无三元操作符,但可用IIFE、map索引或泛型函数模拟:1.IIFE用于条件赋值;2.map[bool]T实现状态选择;3.泛型Ternary函数提升复用性,按场景选最佳方案。
    Golang· Go教程   |  2星期  |   golang 泛型函数 条件表达式 IIFE 三元操作符 369浏览 收藏
  • Golang责任链模式实战教程
    Golang责任链模式实战教程
    答案:在Golang中通过接口和组合实现责任链模式,将请求处理分解为多个处理器,按顺序传递直至被处理。定义Handler接口,包含SetNext和Handle方法,各处理器实现该接口并决定是否处理请求或转发给下一个处理器。以审批流程为例,客服、主管、管理员分别处理不同类型请求,未匹配请求由链尾兜底。实际应用中可优化动态注册、上下文传递、日志追踪与并发安全,适用于中间件、权限校验等场景。
    Golang· Go教程   |  2星期  |   golang 请求处理 解耦 责任链模式 Handler接口 392浏览 收藏
查看更多
课程推荐
  • 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次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码