Go 语言类型转换的陷阱

Go 语言作为强类型语言,在使用 Golang 开发项目时,经常会遇到类型转换的场景,整型之间可以直接转换,字节切片和字符串之间也可以直接转换。,但是,如果整型和字符串之间做类型转换,则需要使用 st...
2年前
80

“Rust难学”只是一个谎言

近年来Rust的存在感日渐升高,但是其陡峭的学习曲线似乎总是令人望而生畏。不过谷歌的一项内部调查表明,关于Rust的“难学”或许只是一种谣传。,Rust到底难不难学?谷歌有了Go,为何还要支持Rust...
2年前
2690

Go进阶面试题详解

逃逸分析是Go语言中的一项重要优化技术,可以帮助程序减少内存分配和垃圾回收的开销,从而提高程序的性能。下面是一道涉及逃逸分析的面试题及其详解。,有如下Go代码:,请问上面的代码中,变量x是否会发生逃逸...
2年前
290

Go 编程语言中使用文本文件指南

,作为一种编程语言,Go 具有广泛的内置功能,包括创建、读取和写入文本(.txt)文件等文件的功能。,文件是现代世界我们日常生活的重要组成部分。文本文件对于存储结构化的人类可读数据非常有用,而无需使用...
3年前
190

如何快速学一门新语言?

我花了半个月时间学习Go​,就开发了商业项目,抗住了并发考验,并且成功被Go圈粉。,2022年初,入职新公司后,花了3天时间,学习GoFrame框架,提前完成了开发任务,在项目复盘会上成了同事口中的...
3年前
730

Go 项目使用 Makefile

Go 提供一个名为go的命令,该命令可自动下载、构建、安装和测试 Go 包和命令。,Go 提供go命令,官方的目的是为了不需要编写 Makefile,而是能够仅使用 Go 源代码本身中的信息来构建 G...
3年前
680

伙计,Go项目怎么使用枚举?

哈喽,大家好,我是asong​。枚举是一种很重要的数据类型,在java、C语言等主流编程语言中都支持了枚举类型,但是在Go语言中却没有枚举类型,那有什么替代方案吗?本文我们来聊一聊这个事情;,我们以j...
3年前
90

聊聊Go语言中文件操作

文件操作应该是应用程序里非常常见的一种操作,无论是哪种应用场景,几乎都离不开文件的基本操作。Go语言中提供了三个不同的包去处理文件,os包提供了处理文件的API接口,遵循Unix标准,平台无关,所有操...
3年前
260

Go 数组和切片的介绍

了解使用数组和切片在 Go 中存储数据的优缺点,以及为什么其中一个更好。,在本文中,我将解释 Go 数组和切片,包括如何使用它们,以及为什么你通常要选择其中一个而不是另一个。,数组是编程语言中最流行的...
3年前
670

PHP转Go,框架选什么?

这是一期会引起广泛讨论的内容,不亚于“PHP是世界上最好的语言”。,不管我们是否基于框架去开发,不管使用什么框架去开发。,6个字的内功心法一定要牢记:高内聚,低耦合。,不管是单体项目还是微服务,不管是...
3年前
500

这不会又是一个Go的BUG吧?

hello,大家好呀,我是小楼。,最近我又双叒叕写了个BUG,一个线上服务死锁了,不过幸亏是个新服务,没有什么大影响。,出问题的是Go的读写锁,如果你是写Java的,不必划走,更要看看本文,本文的重点...
3年前
420

Go插件系统Plugin的分析

,在Go语言中,有一个好像很好用,但却比较少人提及的功能,那就是Go Plugin。,目前在 Go 工程中普遍还没广泛的使用起来,覆盖率不高。在 Go issues 上吐槽挺多,甚至感觉有点像凉了半截...
3年前
200

在 Go 中生成随机的安全密码

你可以使用 Go 编程语言​ 提供的随机数生成器来生成由 ASCII 字符组成的难以猜测的密码。尽管本文中提供的代码很容易阅读,但是你仍需要了解 Go 的基础知识,才能更好地理解它。如果你是对 Go ...
3年前
500

学会 Go 中的时间处理

​作为程序员,我们经常需要对时间进行处理。在 Go 中,标准库 time 提供了对应的能力。,本文将介绍 time 库中一些重要的函数和方法,希望能帮助到那些一遇到 Go 时间处理问题就需要百度的童鞋...
3年前
360

如何用Go实现一个ORM

为了提高开发效率和质量,我们常常需要ORM来帮助我们快速实现持久层增删改查API,目前go语言实现的ORM有很多种,他们都有自己的优劣点,有的实现简单,有的功能复杂,有的API十分优雅。在使用了多个类...
3年前
430

在 Go 中复制文件的三种方法

本文将介绍展示如何使用 Go 编程语言 来复制文件。在 Go 中复制文件的方法有很多,我只介绍三种最常见的:使用 Go 库中的 io.Copy() 函数调用、一次读取输入文件并将其写入另一个文件,以及...
4年前
210

Go 语言内存逃逸案例

在「Go 语言逃逸分析」中,我们了解到内存分配的相关知识,栈空间分配开销小,堆空间分配开销大。,Go 语言编译器可以通过逃逸分析决定内存分配到栈空间或堆空间。但是,分配到栈空间的对象在某些情况中会逃逸...
4年前
550

常见排序算法的Golang 实现

现在的面试真的是越来越卷了,算法已经成为了面试过程中必不可少的一个环节,你如果想进稍微好一点的公司,「算法是必不可少的一个环节」。那么如何学习算法呢?很多同学的第一反应肯定是去letcode上刷题,首...
4年前
130

Go 语言 context 优秀实践

Go 语言在 v1.7 引入 context 包,关于它的使用方式,我们在之前的文章中已经介绍过,感兴趣的读者朋友们可以翻阅。,本文我们介绍 context 包的最佳实践,包括传值、超时和取消。,我们...
4年前
180

彻底理解闭包实现原理

,闭包对于一个长期写 Java 的开发者来说估计鲜有耳闻,我在写 Python 和 Go 之前也是没怎么了解,光这名字感觉就有点"神秘莫测",这篇文章的主要目的就是从编译器的角度来分析闭包,彻底搞懂闭...
4年前
460