Go语言基础之time包详解

前言一寸光阴一寸金,时间难买寸光阴,时间,是个多么重要的东西。同样,在我们的编程中,时间也依然占据着很大的一部分。就像淘宝,客户下单需要记录时间,发货了需要记录时间,保质期多久需要推算时间,等等等等。那我们一起来看看Go中是如何操作时间叭!time.Now()time.Now()返回的是一个Time类型。相关代码如下func main() { var nowTime = time.Now() fmt.Println(nowTime) var year = nowTime.Year() //当前年...阅读全文

51CTO博客 2021-04-27 14:11:02 mb6066e504cce6f

Go语言增强版操作Mysql(Sqlx)

前言上次咱们学习了如何使用Go操作Mysql,并且实现了简单的增删改查。但是相对来说,还有有点复杂的,可能那些大佬也都觉得繁琐叭。就又开发出了增强版查询Mysql操作库Sqlx。mod文件go.modmodule sqlxDemogo 1.14require ( github.com/go-sql-driver/mysql v1.4.0 github.com/jmoiron/sqlx v1.2.0 google.golang.org/appengine v1.6.7 // indirect)创建...阅读全文

51CTO博客 2021-04-27 14:09:56 mb6066e504cce6f

Go语言操作Mysql语言基础知识

前言通常情况下,我们程序员和数据库打交道是最多的。要然我们怎么会被称为码农呢。存用户信息需要数据库,存订单需要数据库,等等等等,现在真是数据驱动着发展。但是数据库种类有很多,有Mysql,Oracle,SQL Server。本篇就示例如何Go操作Mysql。准备工作本次使用的是go mod进行包依赖管理,还不会使用的向上爬***,找go mod用法。使用的库是第三方库go-sql-driver/mysql。准备工作之连接数据库代码func main() { var username = "roo...阅读全文

51CTO博客 2021-04-27 14:09:27 mb6066e504cce6f

手把手教你用Go语言开发一款简易目录生成器

前言有时候,我看着我的目录,或者我想找个文件时,尤其是目录很多时,总是有点难受。比如这个目录,是我的一个教程目录。但是我并不能一目了然的知道每个文件夹下都有啥,并且每次找一个文件也很费事。所以,基于上述的需求,使用Go语言,终于撸了个目录生成器,感觉还行。实现的效果通过编写的脚本,可以将目录整合成.txt文件,并且下级目录使用4个空格缩进。代码先别管怎么实现的,先看代码。package mainimport ( "bytes" "flag" "fmt" "io/ioutil" "os" "pat...阅读全文

51CTO博客 2021-04-27 14:08:59 mb6066e504cce6f

从Go语言角度剖析关于计算机位的问题

前言Hey,大家好呀,我是码农,星期八!最近在学习关于逆向的一些玩意,发现逆向不得不说都是些玩底层的玩意。在学习的过程中,发现了一个其实在正向开发中也用的很多的底层知识点,就是位和字节。比如一个数字a究竟是怎么存在内存中的。一段代码本次就以Go语言举例,Go语言是类C语言,一些底层还是很相近的!代码package mainimport ( "fmt" "unsafe")func main() { //定义一个 字符a var a = 'a' //定义一个 正 整数3 var b uint8 = ...阅读全文

51CTO博客 2021-04-27 14:08:22 mb6066e504cce6f

一篇文章带你搞定Go语言基础之文件操作

前言Hey,大家好呀,我是码农,星期八,这次咱们来说一下文件操作。文件操作就简单了,像打开word了,excel了,都是文件操作,当然,我们肯定是不能直接操作word的我们就从最简单的普通文件开始叭!打开和关闭文件package mainimport "os"func main() { //os.Open是只读模式 fileObj, err := os.Open("永不退缩.txt") if err != nil { panic(err)} //关闭文件 fileObj.Close() //一般...阅读全文

51CTO博客 2021-04-27 14:07:55 mb6066e504cce6f

吊打jd_seckill,Go语言版免配置抢茅台程序,实力接盘~

大家好,我是明哥。在12月29日那天,我发布了一篇文章『大佬开源抢茅台脚本,火了』,介绍了一个非常热门的开源项目 jd_seckill,利用这个脚本项目可以实现在京东上自动预约,自动抢茅台。只要抢到一瓶,就可以净赚将近 1000 块钱,真的是天上掉钱的事儿,这波用一句话来说就是:技术造福人类啊~这个项目连续几天登上了 Github 的榜首,短短几天时间收获了8000多的star,简直火得一塌糊涂。可惜好景不长,就在昨天,作者 红头土豆 就收到了京东安全的警告邮件,在重重的压力之下,红头土豆最后一...阅读全文

51CTO博客 2021-04-27 14:07:27 mb6066e504cce6f

手把手教你用Go语言打造一款简易TCP端口扫描器

前言Hey,大家好呀,我是码农,星期八。这次呢, 咱们来实现一个简单的TCP端口扫描器!也来体验一下***的风采!TCP扫描本质我们在使用TCP进行连接时,需要知道对方机器的ip:port正常握手连接成功的话,流程如下。连接失败有正常,就有失败,如果被连接方关闭的话,流程如下。如果有防火墙还有一种可能是,端口开放,但是防火墙拦截,流程如下。代码本质理解之后,就可以开始撸代码了。在Go中,我们通常使用net.Dial进行TCP连接。它就两种情况成功:返回conn。失败:err != nil。普通版...阅读全文

51CTO博客 2021-04-27 14:06:41 mb6066e504cce6f

从Go语言角度浅谈内存分配

前言相信各位小伙伴一定看过这样的言论,某某B乎大佬xxx,发了一堆文字,一定要学好底层,一定要学好C语言!!,然后下面各种抬杠。B乎大佬:C语言是最牛掰的,一定要从C语言开始学起。杠精张三:学C有啥用,啥都干不成,直接学Java,然后上框架,直接开始开发。杠精李四:@杠精张三,你会懂C吗,瞎胡扯,xxx一堆理由,反正,C是一定要学的,基础一定要打好。...各路杠精大V正在赶来...杠精王五:PHP万岁,PHP NB,PHP天下第一。嗯...,可能各位小伙伴或多或少,都看到过这些言论,作为吃瓜群众...阅读全文

51CTO博客 2021-04-27 14:06:09 mb6066e504cce6f

一篇文章带你了解Go语言基础之网络编程

前言Hi,大家好呀,我是码农,星期八,我们身处21世纪,我们的世界已经在不知不觉中,就像很多网一样在互联互通。互联网是一个统称,目前比较常用的有TCP,UDP协议。当然,还有很多其他的协议,但是本次主要讲最常用的TCP和UDP协议。socker编程我们所学的TCP和UDP,统称为Socker编程,也叫做套接字编程。多台机器要实现互相通讯,其实是一个非常复杂的过程,底层从铺设网线,网线接口,交换机,路由器,在到规定各种协议。再到应用层QQ,微信等软件。如果没有一套标准,每次使用都要自己去实现,可能...阅读全文

51CTO博客 2021-04-27 14:05:43 mb6066e504cce6f

一篇文章带你了解Go语言基础之并发(channel)

前言Hi,大家好,我是码农,星期八,本篇继续带来Go语言并发基础,channel如何使用。看看Go协程如何配合channel。快来上车叭。为什么需要channelchannel在Go中,也叫做管道,是用来多线程之间共享数据的。通常情况下,在Go中共享数据用的也是channel,但是在Go有两种共享数据方式。共享内存实现通讯。通过管道(channel)通讯(推荐)。为啥子共享内存通讯不太推荐?示例代码:多线程修改一个值。函数func Calc() { defer wg.Done() NUM = N...阅读全文

51CTO博客 2021-04-27 14:05:15 mb6066e504cce6f

一篇文章带你入门Go语言基础之并发

前言Hey,大家好,我是码农星期八,终于到了Go中最牛掰的地方,并发,这也是Go为什么能快速火的原因。部署方便,不需要容器,随便跑一个都是相当于Nginx的存在,怎么肯能不火所以,来看看扒!!!引言Go语言,专门为并发而生的语言,每启动一个微线程创建一个代价大概2KB起步假设一个内存条大小4G,一个微线程2kb,1G=1024M=1048576kb,1048576/2=524288,五十多万个但是你知道像Java,Python等语言,一个线程代价多大吗???,2MB起步,代价直接翻了千倍所以,激...阅读全文

51CTO博客 2021-04-27 14:04:46 mb6066e504cce6f

一篇文章教会你Go语言基础之结构体反射

前言Hey,大家好呀,我是码农,星期八。反射在结构体中的应用,才是最广泛的!毕竟在Go中,是用结构体代替对象的!所以最多的,最麻烦的,也是反射结构体,也是最灵活的!反射在结构体的应用上次讲的,只是在普通变量中的应用,相对来说,使用的场景不是太多。但是反射在结构体中的应用,基本会贯穿整个Go语言基础。示例代码结构体type Student struct { Name string `json:"name" describe:"姓名"` Age int `json:"age" describe:"年...阅读全文

51CTO博客 2021-04-27 14:04:19 mb6066e504cce6f

一篇文章教会你Go语言基础之反射

前言Hey,大家好呀,我是码农,星期八!,我们以前学的呀,都属于正向定义变量,正向开发!但是有没有什么办法能反着来呢?根据变量获取类型等操作。一起来看看Go的反射吧!!!什么是反射反射,嗯...,就是反着的意思呗,就是把东西反过来。比如这样的一个很简单的代码。var a int = 3fmt.Println(a)我们当然知道a变量是int类型,但是反过来想,程序是怎么知道a是int类型呢???这时候,就需要用到反射了。示例代码v := reflect.TypeOf(a)fmt.Println(v...阅读全文

51CTO博客 2021-04-27 14:03:48 mb6066e504cce6f

手把手教会你带你理解Go语言中的包

前言Hey,大家好呀,我是星期八,咱们原来写的代码,都是缩在一块的,久而久之咱们可能都能感觉到冗余。所以今天就来学一下包这个东西,将咱们的代码拆分一下。包包可以理解为存放多个.go的文件夹但是这个文件夹下面的第一行的package后面跟的不再是main了而是文件名,就像这样。目录clac和main.go文件是同级的。可以看到clac文件夹下的add.go第一行不再是main而是文件夹名 clac同理sub.go第一行也是。这个只是单独的解释包的定义方式没有实际意义。包的注意事项如果这个文件夹要当...阅读全文

51CTO博客 2021-04-27 14:03:10 mb6066e504cce6f

一篇文章带你了解Go语言基础之接口(下篇)

前言Hey,大家好呀,我是码农,星期八,上次咱们说的接口呀,还是没说完,还剩下了一些下面就来看看叭!!空接口含义本篇介绍的就是存储类接口,存储接是我的命名,其实人家就叫空接口。空接口的作用就是可以存储任何数据。同理,空接口没有定义任何方法,也就是说任何接口都实现了空接口,所以空接口才能存任意数据。空接口空接口示例代码package mainimport "fmt"func main() { //变量直接赋值为空接口 var x interface{} x = 1 x = 1.1 x = "666...阅读全文

51CTO博客 2021-04-27 14:02:37 mb6066e504cce6f

go modules构建项目

go module是go官方自带的go依赖管理库,在1.13版本正式推荐使用 go module可以将某个项目(文件夹)下的所有依赖整理成一个 go.mod 文件,里面写入了依赖的版本等 ## 开启go module > set GO111MODULE=on //windows > > export GO111MODULE=on //linux >goland需要在工具里另行配置,默认是不开启的 > ## GO PROXY 下载代理 (不配置国内镜...阅读全文

Go语言中文网 2021-04-27 11:18:37 starFullSky

【广州】急招golang开发三名,坐标广州天河华师

**招聘岗位:golang工程师 **<br /> **薪酬范围:18K-30K **<br /> **岗位职责:** <br /> 1、负责内部核心服务的开发 <br /> 2、负责项目的持续迭代与改进<br /> 3、参与技术方案设计和评审,攻克部分技术难题 <br /> 4、开源项目源码的攻关 <br /> **任职要求:**<br /> 1、本科及以上学历,3年以上工作经验,两年以上Golang线上项目开发经验 <br /> 2、熟悉Golang,熟悉GPM模型,熟悉...阅读全文

一文读懂云原生 go-zero 微服务框架

0. go-zero介绍从今年8月7日github开源以来,已经获得了7700+ star的 go-zero 是一个集成了各种工程实践的web和rpc框架。通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验。go-zero包含极简的API定义和生成工具goctl,可以根据定义的api文件一键生成Go, iOS, Android, Kotlin, Dart, TypeScript, JavaScript代码,并可直接运行。使用go-zero的好处:轻松获得支撑千万日活服务的稳定性内建级联...阅读全文

51CTO博客 2021-04-27 10:22:55 Kevin Wan

体系课-Go+Python双语言混合开发 盯紧技术先机 抓紧高薪机遇

第1章 【阶段一:Go语言基础】1~13章内容 试看【阶段一】我们通过python与go的对比式讲解,系统掌握go语法,比如某个知识点在go语言中是如何的,同时在python中又如何使用?两者之间使用上有什么区别?通过对比学习的方式,一来帮助大家快速掌握go语言不墨迹,同时也能加深对python的认识,学习效率事半功倍,为后面的实战进阶夯实基础。【第一章:讲解go语言的特点,介...共 23 节 (269分钟) 收起列表1-1 Go+Python双语言混合开发-课程导学 (11:35)试看1-2...阅读全文

51CTO博客 2021-04-27 09:58:09 mob604756fb6267