随笔分类 -  GO

上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 32 下一页
go学习
摘要:Encode 将一个对象编码成JSON数据,接受一个interface{}对象,返回[]byte和error: func Marshal(v interface{}) ([]byte, error) Marshal函数将会递归遍历整个对象,依次按成员类型对这个对象进行编码,类型转换规则如下: boo 阅读全文
posted @ 2022-09-08 09:24 技术颜良 阅读(158) 评论(0) 推荐(0)
摘要:现在就开始你的Go语言学习之旅吧!人生苦短,let’s Go. 指针是一个代表着某个内存地址的值, 这个内存地址往往是在内存中存储的另一个变量的值的起始位置. Go语言对指针的支持介于Java语言和 C/C++ 语言之间, 它既没有像Java那样取消了代码对指针的直接操作的能力, 也避免了 C/C+ 阅读全文
posted @ 2022-09-03 09:38 技术颜良 阅读(782) 评论(0) 推荐(0)
摘要:最近读到一篇关于 Go 反射的文章,作者通过反射给结构体填充字段值的案例,充分利用 Go 的各种内在机理,逐步探讨让代码运行得更快的姿势。 文章(原文地址:https://philpearl.github.io/post/aintnecessarilyslow/)非常有学习价值,故翻译整理了下来。 阅读全文
posted @ 2022-08-31 11:33 技术颜良 阅读(58) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2022-08-30 21:47 技术颜良 阅读(17) 评论(0) 推荐(0)
摘要:我想起了我刚工作的时候,第一次接触RPC协议,当时就很懵,我HTTP协议用的好好的,为什么还要用RPC协议? 于是就到网上去搜。 不少解释显得非常官方,我相信大家在各种平台上也都看到过,解释了又好像没解释,都在用一个我们不认识的概念去解释另外一个我们不认识的概念,懂的人不需要看,不懂的人看了还是不懂 阅读全文
posted @ 2022-07-23 08:29 技术颜良 阅读(634) 评论(0) 推荐(2)
摘要:fmt.Println(unsafe.Pointer(&a)) / 阅读全文
posted @ 2022-07-09 11:42 技术颜良 阅读(297) 评论(0) 推荐(0)
摘要:在刚使用 Go 时,菜刀曾将 Python 深拷贝手法[:]用于 Go 中 ,结果造成了 bug。相信不少转语言的 Gopher 也在切片拷贝上栽过跟头。 切片是 Go 中最基础的数据结构,之前我们谈过切片传递、切换转换、切片扩容等内容。 本文,我们将探讨切片拷贝,就切片的三种拷贝方式进行图解分析, 阅读全文
posted @ 2022-07-09 11:38 技术颜良 阅读(359) 评论(0) 推荐(0)
摘要:01 介绍 Go 语言中函数的最后一个参数可以是变长参数,细心的读者朋友们可能已经发现,在 Go 语言标准库 fmt包中就有使用变长参数函数,比如 Println 和 Printf。 我们在使用 Go 语言开发应用程序时,也可以在合适的场景使用变长参数函数,使我们的代码更优雅。 02 变长参数 顾名 阅读全文
posted @ 2022-07-04 07:01 技术颜良 阅读(214) 评论(0) 推荐(0)
摘要:POST JSON func main() { url := "http://restapi3.apiary.io/notes" fmt.Println("URL:>", url) //也可以使用marshall 一个struc map array .... var jsonStr = []byte 阅读全文
posted @ 2022-07-02 11:42 技术颜良 阅读(459) 评论(0) 推荐(0)
摘要:咱们说回 Go ,切片用的时候还得担心会不会切换底层数组,切片的诡异(仅对刚接触Go的人来说,用多了大家都被坑成专家了)现象,咱们以前聊过。以及一朝被蛇咬,连使用 Map 都得担心下底层数据结构之类的会不会指针又又又变了,答案在这里我不告诉你们,回头看这个复习去吧 Go 函数的 Map 型参数,会发 阅读全文
posted @ 2022-06-26 19:46 技术颜良 阅读(54) 评论(0) 推荐(0)
摘要:今天给大家分享一个实际踩坑的一个示例,以为的 nil 并不是 nil。众所周知,Go 编程中 nil 值的判断可谓是随处可见: v := findSomething()if v != nil { // do something} nil 值究竟是什么?这个在之前的文章也分析过( 深度剖析 Go 的 阅读全文
posted @ 2022-06-23 08:44 技术颜良 阅读(205) 评论(0) 推荐(0)
摘要:日志无论对于程序还是程序员都非常重要,有多重要呢,想要长期在公司健健康康的干下去就得学会阶段性划水,阶段性划水的一大关键的就是干活快过预期但是装作。。。不对,这个开头不对劲,下面重来。日志无论对于程序还是程序员都非常重要,程序员解决问题的快慢除了经验外,就是看日志能不能有效地记录问题发生的现场以及上 阅读全文
posted @ 2022-06-06 14:08 技术颜良 阅读(299) 评论(0) 推荐(0)
摘要:gnet 高性能和轻量级网络库 https://gnet.host/docs/quickstart/ 软件首页 软件文档 官方下载 极速下载 概览 资讯 博客 问答 软件简介 gnet 是一个基于事件驱动的高性能和轻量级网络框架。它直接使用 epoll 和 kqueue 系统调用而非标准 Golan 阅读全文
posted @ 2022-05-26 16:59 技术颜良 阅读(712) 评论(0) 推荐(0)
摘要:一. 开发工具 1)sql2go用于将 sql 语句转换为 golang 的 struct. 使用 ddl 语句即可。例如对于创建表的语句: show create table xxx. 将输出的语句,直接粘贴进去就行。http://stming.cn/tool/sql2go.html https: 阅读全文
posted @ 2022-05-23 11:44 技术颜良 阅读(348) 评论(0) 推荐(0)
摘要:容器的本质 容器是一种轻量级的操作系统层面的虚拟化技术。 重点是 “操作系统层面” ,即容器本质上是利用操作系统提供的功能来实现虚拟化。 容器技术的代表之作 Docker ,则是一个基于 Linux 操作系统,使用 Go 语言编写,调用了 Linux Kernel 功能的虚拟化工具。 网管叨bi叨 阅读全文
posted @ 2022-05-19 18:08 技术颜良 阅读(383) 评论(0) 推荐(0)
摘要:本系列计划用三篇文章来写:bufio包中的读取原理、bufio包中的写入原理以及使用bufio高效读取的示例。今天跟大家分享第一篇读取原理。 01 Go中普通的文件读写 首先我们来看看在Go中对文件的普通读取方式是怎么样的。下面是普通的读取文件内容的示例代码: package mainimport 阅读全文
posted @ 2022-05-18 09:18 技术颜良 阅读(268) 评论(0) 推荐(0)
摘要:推荐几个查看 Go 汇编源码的工具使用技巧 今天介绍几个常用的查看 Go 汇编代码、调试 Go 程序的命令和工具,既可以在平时和同事、网友抬杠时使用,还能在关键时刻打他们的脸。 比如,有同事说这段代码: package maintype Student struct { Class int}func 阅读全文
posted @ 2022-05-17 21:14 技术颜良 阅读(1440) 评论(0) 推荐(1)
摘要:package main import ( "fmt" _ "github.com/jinzhu/gorm/dialects/mysql" "github.com/jinzhu/gorm" "time") var ( //变量db 通过init直接初始化 db *gorm.DB err error 阅读全文
posted @ 2022-05-16 17:54 技术颜良 阅读(1294) 评论(0) 推荐(0)
摘要:1.23 KB package model import ( "database/sql/driver" "encoding/json" "fmt" ) type JsonArrayUint []uint func (o JsonArrayUint) Value() (driver.Value, e 阅读全文
posted @ 2022-05-15 15:57 技术颜良 阅读(37) 评论(0) 推荐(0)
摘要:https://mp.weixin.qq.com/s/OUChAUW8noDhDbCFskLV5A 本文我们详细聊一下Go语言的原子操作的用法,啥是原子操作呢?顾名思义,原子操作就是具备原子性的操作... 是不是感觉说了跟没说一样,原子性的解释如下: 一个或者多个操作在 CPU 执行的过程中不被中断 阅读全文
posted @ 2022-05-11 15:34 技术颜良 阅读(205) 评论(0) 推荐(0)

上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 32 下一页