如何用 Go 调用 Windows API | 青训营笔记
前言有时候为了更好的兼容Windows, 或者我们为了获得更高级别功能的访问权限(如配置或创建JobObjects或安全令牌等),我们需要直接去调用Windows的系统API。很幸运,我们可以利用syscall包与系统直接通信,不用用到CGO 。 然而,也有不方便的地方,如大多数的API,我们需要依赖不安全 (unsafe)的内存管理。这篇文章,主要记录了我在平时开发过程中以及网上收集到的一些关....
怎么写Go基准测试 | 青训营笔记
前言记录加入青训营的每一天笔记。或许你经常会思考这样的问题,我用不同的方法实现了同样的效果,哪个会更快?哪个内存消耗更小?这时候你一个简单的基准测试就能解决你的疑惑。Go向来是以工具丰富而著称的,在学习Go的过程中,你会发现无论是写一个单元测试,还是做一些竞争检测都能很快的上手,而且用的很痛快。当然,接下来要说的基准测试也一样。基准测试工具就在Go的测试包中,下面就用一个例子来介绍。举个栗子由于....
Go框架三件套详解 | 青训营笔记(下)
编译运行kitex 工具已经帮我们生成好了编译和运行所需的脚本:编译:$ sh build.sh执行上述命令后,会生成一个 output 目录,里面含有我们的编译产物。运行:///$ sh output/bootstrap.sh执行上述命令后,Echo 服务就开始运行了。编写客户端有了服务端后,接下来就编写一个客户端用于调用刚刚运行起来的服务端。首先,同样的,先创建一个目录用于存放我们的客户端代....

Go框架三件套详解 | 青训营笔记(中)
高级查询智能选择字段GORM 允许通过 Select 方法选择特定的字段,如果您在应用程序中经常使用此功能,你也可以定义一个较小的结构体,以实现调用 API 时自动选择特定的字段type User struct { ID uint Name string Age int Gender string // 假设后面还有几百个字段... } type APIUs...
Go框架三件套详解 | 青训营笔记(上)
前言记录加入青训营的每一天的笔记今天这次的笔记是对于Go框架(Gorm、Kitex、Hertz)三件套的内容三件套介绍Gorm、Kitex、Hertz的基本用法与常见的API讲解Gormgorm是Golang语言中一个已经迭代数十年且功能强大、性能极好的ORM框架ORM:Object Relational Mapping(对象关系映射),其主要作用是在编程中,把面向对象的概念跟数据库中表的概念对....
Go语言工程实践之测试 | 青训营笔记
前言记录加入青训营的每一天的日笔记背景测试的出现是为了避免项目中出现重大事故测试是避免事故的最后一道屏障测试单元测试的覆盖率在一定程度上而言,决定了代码的质量单元测试通过测试单元的输出与期望值进行校对从而验证代码的正确性,从而保证新旧代码的互不影响与程序的正常运行。进而单元测试较于编译更易于在较短的周期内发现和定位代码中的错误使损失最小化从而提升效率。所以写单元测试是很有必要的。Golang单元....

Go语言的依赖管理 | 青训营笔记
前言记录加入青训营的每一天的日笔记背景开发项目时应学会站在巨人的肩膀上,即有效利用开发组件进行或工具提升自己的研发效率对于较简单的单体函数而言,只需要依赖原生的SDK即可完成开发对于实际开发的工程较于复杂,应将精力投放在实现的业务逻辑之上工程项目不可能基于标准库0-1编码搭建管理依赖库GOPATH 模式GOPATH为环境变量 包含bin、pkg、src三部分$GOPATH:项目根路径src:项目....
Go语言进阶之并发编程 | 青训营笔记
前言记录加入青训营的每一天的日笔记并发编程并发与并行的区别并发:多线程程序在一个核的CPU上运行并行:多线程程序在多个核的CPU上运行Go可以充分发挥多核优势 高效运行协程Goroutine协程:用户态,轻量级线程 栈MB级别线程:内核态,线程跑多个协程,栈KB级别线程的创建、切换、停止较大地占用系统资源协程的创建和调度由Go语言进行完成通过开启协程快速打印hello goroutine案例:p....

与Go的初次见面 | 青训营笔记
前言记录加入青训营的每一天的日笔记本文总共分为:介绍、关键字、数据类型的定义、内置基础类型、array/slice/map、零值Go介绍Go 是在设计时考虑了系统编程的通用型编程语言。它是强类型,有垃圾回收机制并原生支持并发编程。Go 程序由一个或多个 package 组成,这样可以高效的管理依赖。Go 的语法简洁且有规则,这让自动化工具可以很容易的分析代码,例如:集成开发环境。Go一些规则Go....
高性能Go语言发行版优化与落地实践|青训营笔记
课前课程导学:https://juejin.cn/post/7095977466094682148/#comment课程ppt:https://bytedance.feishu.cn/file/boxcnRcx62rX5X22Q2WFR5Xm5Oh课程链接:https://live.juejin.cn/4354/yc_high-performance本节课程主要介绍了Go语言的内存管理方式,Go....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
开发与运维
集结各类场景实战经验,助你开发运维畅行无忧
+关注