Fork me on GitHub
打赏

随笔分类 -  Go学习

摘要:WeeklyARTS-Share 一、概述 框架的功能:定时读取指定路径下的配置文件,扫描配置文件中的节点,然后拼出一个新的路径,在该路径下判断任务文件夹是否该删除,如果该路径下的任务文件夹为0,同时删除该路径。 二、所需要的关键技能点 技能概述 Go语言基本语法 channel机制:通道负责传输数 阅读全文
posted @ 2018-12-16 17:38 Zoctopus_Zhang 阅读(309) 评论(0) 推荐(0) 编辑
摘要:之前一直在windows下写Go,现在工作环境切换至Linux下,因此写下此文,记录安装Go环境的过程。 操作系统:CentOS7.5 一、安装步骤 1,下载Go语言安装包 2,检查下载的Go语言版本 3,在 etc/profile 配置文件中添加GOROOT和GOPATH 使配置文件生效 4,创建 阅读全文
posted @ 2018-10-19 18:33 Zoctopus_Zhang 阅读(777) 评论(0) 推荐(0) 编辑
摘要:之前在做注册登录服务器逻辑时,遇到的一些要点难点,记录于此。 一、基础必备技能 1,掌握至少一门用于后端开发的编程语言,如C/C++、Java、Go等; 2,理解TCP/UDP的机制,Socket编程,分包粘包实现的原理; 3,Protobuf协议,RPC协议; 4,数据库操作,例如MySQL,Re 阅读全文
posted @ 2018-08-30 21:16 Zoctopus_Zhang 阅读(2395) 评论(0) 推荐(0) 编辑
摘要:软件环境:Goland Github地址 一、目的 之前用纯逻辑垒完了一个可登入登出的在线多人聊天室(代码仓库地址),这次学习了Protobuf协议,于是想试着更新下聊天室的版本。 主要目的是为了掌握Protobuf的使用。 二、设计思路 通过Protobuf中内置好的编码函数,将要发送的数据进行编 阅读全文
posted @ 2018-08-28 21:39 Zoctopus_Zhang 阅读(1455) 评论(1) 推荐(0) 编辑
摘要:最近在做注册登录服务时,学习用Go语言操作MySQL数据库实现用户数据的增删改查,现将个人学习心得总结如下,另外附有代码仓库地址,欢迎各位有兴趣的fork。 软件环境:Goland、Navicat for MySQL。 一、实现思路 1,我的总体设计思路是先写出连接数据库和关闭数据库的逻辑,再建立四 阅读全文
posted @ 2018-08-27 21:54 Zoctopus_Zhang 阅读(2278) 评论(0) 推荐(0) 编辑
摘要:代码仓库地址 一、介绍 Protobuf是Google旗下的一款平台无关,语言无关,可扩展的序列化结构数据格式。所以很适合用做数据存储和作为不同应用,不同语言之间相互通信的数据交换格式,只要实现相同的协议格式即同一proto文件被编译成不同的语言版本,加入到各自的工程中去,这样不同语言就可以解析其他 阅读全文
posted @ 2018-08-13 21:52 Zoctopus_Zhang 阅读(4613) 评论(0) 推荐(1) 编辑
摘要:本文共34道题目 一、判断题 此题考查编码规范。 反射最常见的使用场景是做对象的序列化(serialization,有时候也叫Marshal & Unmarshal)。 例如:Go语言标准库的encoding/json、encoding/xml、encoding/gob、encoding/binar 阅读全文
posted @ 2018-08-06 17:36 Zoctopus_Zhang 阅读(898) 评论(0) 推荐(0) 编辑
摘要:一、判断题 defer应该在if后面,如果文件为空,close会崩溃。 数组是值类型,也是按值传递的;切片slide是引用类型。 import后面跟的是包的路径,而不是包名; 同一个目录下可以有多个.go文件,但是只能有一个包; 使用第三方库时,先将源码编译成.a文件放到临时目录下,然后去链接这个. 阅读全文
posted @ 2018-08-03 18:02 Zoctopus_Zhang 阅读(387) 评论(0) 推荐(0) 编辑
摘要:题目来源于牛客网 一、判断题 成员变量或者函数的首字母表示是否对外部可见。 switch后面的声明语句和表达式语句都是可以选择的。例如: 错误指的是可能出现问题的地方出现了问题,比如打开一个文件时失败,这种情况在人们的意料之中;而异常指的是不应该出现问题的地方出现了问题,比如引用了空指针,这种情况在 阅读全文
posted @ 2018-08-03 15:26 Zoctopus_Zhang 阅读(534) 评论(0) 推荐(0) 编辑
摘要:题目来源于牛客网 一、选择题 Go语言自带垃圾回收机制。 如果是值传递的话子函数对map修改不会影响父函数中的map,如果是地址传递则会影响。 go语言编译器会自动在以标识符、数字字面量、字母字面量、字符串字面量、特定的关键字(break、continue、fallthrough和return)、增 阅读全文
posted @ 2018-08-02 21:49 Zoctopus_Zhang 阅读(862) 评论(0) 推荐(0) 编辑
摘要:一、目的 运用Go语言中的goroutine和通道实现一个简单的一个服务器端对多个客户端的在线聊天 软件环境:Goland,Go1.9 代码仓库链接 二、设计思路 与一对一的设计思路类似,就是加了个线程的操作。 1,服务器端声明一个map,并打开监听端口; 2,客户端打开监听端口,同时连入服务器端; 阅读全文
posted @ 2018-08-02 14:26 Zoctopus_Zhang 阅读(2859) 评论(0) 推荐(0) 编辑
摘要:一、目的 使用Go语言实现一个服务器端与客户端的聊天室。 软件:Goland,Go1.9 代码仓库地址 二、思路 1,首先启动服务器端,使用listen_socket函数监听IP地址上的客户端连接; 2,启动客户端,并向服务器端发送数据,发送结束后端口阻塞,等待服务器端的消息; 3,服务器端接收到由 阅读全文
posted @ 2018-08-01 16:18 Zoctopus_Zhang 阅读(1692) 评论(0) 推荐(0) 编辑
摘要:注:题目来源均出自牛客网。 一、选择题 Map(集合)属于Go的内置类型,不需要引入其它库即可使用。 Go-Map_菜鸟教程 在函数声明中,返回的参数要么都有变量名,要么都没有。 C选项函数声明语法有错误,error是返回类型,但没有返回名。 go语言中字符串是UTF-8编码并存储的,它语言不定长的 阅读全文
posted @ 2018-08-01 11:41 Zoctopus_Zhang 阅读(825) 评论(0) 推荐(0) 编辑
摘要:声明:题目源自牛客网。 一、单项选择题 解析:作为形参时,可以要求单向,只读或只写。 解析:Go语言的内存回收机制规定,只要有一个指针指向引用一个变量,那么这个变量就不会被释放(内存逃逸),因此在Go语言中返回函数参数或临时变量是安全的。 Golang 垃圾回收剖析 Go 内存逃逸详细分析 解析:G 阅读全文
posted @ 2018-07-27 11:54 Zoctopus_Zhang 阅读(1304) 评论(0) 推荐(0) 编辑
摘要:一、介绍 iota,特殊常量,可以认为是一个可以被编译器修改的常量。 在每一个const关键字出现时,被重置为0,然后再下一个const出现之前,每出现一次iota,其所代表的数字会自动增加1。 iota 可以被用作枚举值: 第一个 iota 等于 0,每当 iota 在新的一行被使用时,它的值都会 阅读全文
posted @ 2018-07-26 18:01 Zoctopus_Zhang 阅读(2013) 评论(0) 推荐(0) 编辑
摘要:一、Go语言中的range Go 语言中 range 关键字用于 for循环中迭代数组(array)、切片(slice)、链表(channel)或集合(map)的元素; 在数组和切片中它返回元素的索引值, 在集合中返回 key-value 对的 key 值。 二、代码举例 如果把代码第七行的 _ 删 阅读全文
posted @ 2018-07-24 17:06 Zoctopus_Zhang 阅读(1981) 评论(0) 推荐(0) 编辑
摘要:https://tour.go-zh.org/methods/25 一、题目描述 还记得之前编写的图片生成器吗?我们再来编写另外一个,不过这次它将会返回一个 image.Image 的实现而非一个数据切片。 定义你自己的 Image 类型,实现必要的方法并调用 pic.ShowImage。 Boun 阅读全文
posted @ 2018-07-23 18:09 Zoctopus_Zhang 阅读(3412) 评论(0) 推荐(0) 编辑
摘要:https://tour.go-zh.org/methods/23 一、题目描述 有种常见的模式是一个 io.Reader 包装另一个 io.Reader,然后通过某种方式修改其数据流。 例如,gzip.NewReader 函数接受一个 io.Reader(已压缩的数据流)并返回一个同样实现了 io 阅读全文
posted @ 2018-07-23 16:32 Zoctopus_Zhang 阅读(2681) 评论(0) 推荐(1) 编辑
摘要:https://tour.go-zh.org/methods/22 一、题目描述 实现一个 Reader 类型,它产生一个 ASCII 字符 'A' 的无限流。 二、题目分析 io 包指定了 io.Reader 接口,它表示从数据流的末尾进行读取。 Read 用数据填充给定的字节切片并返回填充的字节 阅读全文
posted @ 2018-07-23 14:05 Zoctopus_Zhang 阅读(3445) 评论(0) 推荐(0) 编辑
摘要:一、介绍 目的:本文将主要介绍在windows使用VSCode配置Go语言环境 软件:VSCode 二、安装出现的问题 完整信息如下 三、解决方案 进行如下命令进行目录切换:cd %GOPATH%\src\github.com\golang我这里的GOPATH是在D:\GoPath,大家这里一定要注 阅读全文
posted @ 2018-07-17 21:10 Zoctopus_Zhang 阅读(11792) 评论(0) 推荐(0) 编辑

// function btn_donateClick() { var DivPopup = document.getElementById('Div_popup'); var DivMasklayer = document.getElementById('div_masklayer'); DivMasklayer.style.display = 'block'; DivPopup.style.display = 'block'; var h = Div_popup.clientHeight; with (Div_popup.style) { marginTop = -h / 2 + 'px'; } } function MasklayerClick() { var masklayer = document.getElementById('div_masklayer'); var divImg = document.getElementById("Div_popup"); masklayer.style.display = "none"; divImg.style.display = "none"; } setTimeout( function () { document.getElementById('div_masklayer').onclick = MasklayerClick; document.getElementById('btn_donate').onclick = btn_donateClick; var a_gzw = document.getElementById("guanzhuwo"); a_gzw.href = "javascript:void(0);"; $("#guanzhuwo").attr("onclick","follow('33513f9f-ba13-e011-ac81-842b2b196315');"); }, 900);
点击右上角即可分享
微信分享提示