
go
一条金枪鱼
不积硅步无以至千里
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
go学习笔记-遗漏问题记录
1.go的包引用尚不清楚2.go递归函数求斐波那契数列尚未搞明白运行规律原创 2019-08-27 17:33:59 · 157 阅读 · 0 评论 -
RPC
rpc调用基本流程,client将要调用的方法参数打包通过tcp网络发送给server,server接收到消息解包进行方法执行并将返回的结果打包返回给clent完成rpc调用,实质就是跨域调用(个人初步理解)序列化:指的是将数据转化为字节编码的操作,例如json序列化serverpackage mainimport ( "math" "net" "net/http"...原创 2020-04-30 18:22:04 · 441 阅读 · 0 评论 -
gin框架笔记
传统mvc工作流程图特点:web server返回给本地浏览器完整的html页面2.前后端分离架构核心思想是前端HTML页面通过AJAX调用后端的RESTFUL API接口并使用JSON数据进行交互。jin框架解析静态资源方法(html页面/img/css等)<!DOCTYPE html><html lang="en"><head> ...原创 2020-04-20 18:17:26 · 1484 阅读 · 1 评论 -
gin框架使用问题记录
1.环境配置环境配置参考链接2.jin框架安装完成后本地起服务报错找不到提供包github.com/gin-gonic/gin的模块:工作目录不是模块的一部分D:\software\gocode\src\object\gin-day1>go build -o main.exe main.gomain.go:4:2: cannot find module providing pack...原创 2020-04-20 14:51:16 · 784 阅读 · 0 评论 -
go语言使用细节
go资源几种声明使用方式例一:var a int // 声明一个int类型的变量,并初始化值和内存空间,int类型初始值0b := a // 只能在函数中声明使用等价于 var b int , b = a例二:make,newmake 用来为 slice,map 或 chan 类型分配内存和初始化一个对象(注意:只能用在这三种类型上) make 返回类型的引用而不是指针new...原创 2020-01-21 13:06:44 · 158 阅读 · 0 评论 -
LeetCode做题记录
1.两数之和题目:给出一个数组和目标值,求出数组中组成目标值的两个数值思路:双指针暴力破解,将数组拷贝一份,双重遍历,这种方法性能不太好2.两数相加题目:给定两个链表,将链表val元素翻转并组合,再翻转存入链表思路:遍历链表将值翻转存入map或者切片中,我使用的是map切片,然后将较长的slice存入链表中,遍历链表遍历切片,将值相加,如果单个值大于10向前进一位,根据情况创建链表节点,...原创 2020-01-19 16:07:11 · 288 阅读 · 0 评论 -
goweb(http)-项目
main.gopackage mainimport ( "net/http" "text/template")// 处理器函数func ServerHttp(w http.ResponseWriter,r *http.Request){ t := template.Must(template.ParseFiles("view/index.html")) t.Execute(...原创 2019-11-27 18:28:56 · 401 阅读 · 0 评论 -
golang-web(http)
前言:今天是2019-11-25阴天,开始学习goweb,前天刚做完一个gotcp项目,goweb是基于http协议的,http协议又是基于tcp协议封装的,应该问题不大package httpimport “net/http”http包提供了HTTP客户端和服务端的实现。案例一:创建一个处理器函数,使用适配器调用该函数,再创建一个server服务,默认监听8080pack...原创 2019-11-25 16:33:21 · 458 阅读 · 0 评论 -
golang-网络编程经典项目(下)
第九步:原创 2019-11-14 18:50:29 · 262 阅读 · 0 评论 -
golang-网络编程经典项目
经典项目第一步:main.go// 2019-11-7 下午二点 系统index首页package mainimport ( "fmt" "os")var ( userid int userpwd string)func main(){ var loop = true var work int // 这里真是没想到,loop=true则为死循环...原创 2019-11-12 11:25:48 · 1873 阅读 · 1 评论 -
golang操作redis
Redis点我去redis官网点我查看redis命令参考程序操作redis原理:go代码发送指令到redis 6379端口redis核心组件会维护一片内存对redis接收到的指令进行处理能够处理的数据大概为五种格式为: key-value格式string key-valuehash[数据]list[数据]set集合[数据]zset有序集合[数据]处理完毕后进行持久化处...原创 2019-11-07 13:53:09 · 1350 阅读 · 0 评论 -
golang-网络编程
网络包发送解析基本过程:osi七层在编程中可以简化为四层分别为:应用层传输层ip网络层链路层小知识:netstat -anb 查看本机监听端口实例:标准输入代表键盘输入:server.go// net包提供了可移植的网络I/O接口,// 包括TCP/IP、UDP、域名解析和Unix域socketpackage maini...原创 2019-11-01 18:12:43 · 272 阅读 · 0 评论 -
golang-goroutine(协程)和channel(管道)
传统进程和线程概念介绍: 并发和并行概念介绍:golang协程(goroutine) golang协程的特点有独立的栈空间(栈可理解为数值类型,由堆中copy或引用到个体栈空间)共享程序堆空间(堆可理解为引用数据类型)调度由用户控制(线程启动和停止都可由用户控制,java则不行 )协程是轻量级的线程(理论上轻松可启上万条线程)package maini...原创 2019-10-24 17:35:34 · 1215 阅读 · 0 评论 -
第15章-golang单元测试
testing框架原理:创建一个以 _test.go 结尾的文件,这个文件中包含 TestXxx 开头函数,将这个文件放入要测试的文件同级包中,运行 go test 将运行以 _test.go 结尾的文件原理就是testing框架将以 _test.go 结尾的文件引入,然后在main函数中调用以 TestXxx开头的函数程序示意:one.go文件package ...原创 2019-10-23 17:54:25 · 138 阅读 · 0 评论 -
第14章-golang中json相关操作
jsongolang数据类型序列化 json.Marshal()// 演示glang数据类型序列化package mainimport ( "fmt" "encoding/json" "os")type ColorGroup struct { ID int Name string Colors []string}// ...原创 2019-10-23 09:01:13 · 228 阅读 · 0 评论 -
第14章-golang文件操作
ss原创 2019-10-17 12:07:01 · 266 阅读 · 0 评论 -
golang-项目实践下
项目结构:model : 用来表示数据service : 用来做主要的逻辑处理view :视图用来进行展示,调用servicecustomer.go model层// 定义结构体元素package modelimport ( "fmt")type Custmer struct{ Id int Name string Gender string...原创 2019-10-15 18:14:50 · 256 阅读 · 0 评论 -
Printf和Sprintf的区别
Printf会根据传入的参数生成格式化字符串并进行标准输出,还能返回参数字节数和错误Sprintf会根据传入的参数生成格式化字符串并返回该字符串思考:Sprintf 并不会输出该字符串只返回该字符串,如果在编写程序时候想要保留值但不进行输出可以使用SprintfSprintf默认只返回格式化参数值,不会进行输出...原创 2019-10-14 09:22:10 · 2987 阅读 · 0 评论 -
golang-项目实践上
数据库是一个项目的核心功能一:index首页// 项目首页package mainimport "fmt"func main(){ var tmp string loop := true for{ fmt.Println("-------------家庭收支软件-------------") fmt.Println(" 1 收支明细")...原创 2019-10-12 17:49:54 · 525 阅读 · 0 评论 -
巧妙的go表达式
今天在进行go语言练习时,学到了一个很巧妙的表达式,通过一条简单的 for 循环,输出一组算术表达式,着实巧妙// datatime 2019/8/6package mainimport "fmt"func main(){ n := 6 for i := 0;i<n;i++ { fmt.Printf("%v + %v = %v \n",i ,n - i ,n ) }...原创 2019-08-06 17:40:51 · 361 阅读 · 0 评论 -
golang-基础下
切片切片基本介绍:切片的英文为slice切片是数组的一个引用,因此切片是引用传递,在进行值传递需遵守引用传递规则切片使用和数组类似,遍历,访问切片元素和求切片长度 len(silce) 都一样切片的长度是可变的,因此切片是一个可以动态变化的数组切片定义的基本语法:var 变量名 类型 | var a []int此时此刻我想吟诗一首:数组有一种初始化数组的方法为:var a = […...原创 2019-09-04 11:32:35 · 294 阅读 · 0 评论 -
go数组练习题
习题一:生成一个随机数组并进行排序// 数组习题package mainimport ( "fmt" "math/rand" "time")// 创建一个随机种子数并随机生成10个100以内的int类型元素,进行冒泡排序func main(){ rand.Seed(time.Now().UnixNano()) var arr [10]int for i:=0;i&l...原创 2019-09-20 09:11:10 · 436 阅读 · 0 评论 -
golang三种取值传值方式
golang中的array,slice,struct等数据集合中字段元素是有序排列的map类型变量也是有序排列的但是map中的key-value无法取地址struct中pointer类型的字段也是有序排列的,但是指向的值不一定是有序的通过对golang数据集集合字段在内存中的排序分布情况可以有更多的取值手段常规的取值手段有:值拷贝地址传递地址传递相对于值拷贝传递的数据更少所以...原创 2019-09-27 17:22:26 · 2420 阅读 · 0 评论 -
golang-面向对象编程上
//接续go学习笔记——下集方法在某些情况下需要(声明/定义)方法,比如cat结构体,除了有一些字段外(age,socre,address)外,cat结构体还有一些行为,比如:唱,跳,rap,篮球,这时就需要方法才能完成glang中的方法都是作用在指定数据类型上的(即:和指定数据类型绑定),因此自定义数据类型都可以有方法,不仅仅是struct...原创 2019-09-28 09:08:33 · 174 阅读 · 0 评论 -
游戏畅想
鹰酱兔兔大作战回合制游戏自由搏击制游戏技能/装备鹰酱装备:导弹航空母舰潜艇战斗机轰炸机特种部队集成军对应技能:航空母舰:岛链封锁 | 集群轰炸 | 夺取制空权导弹:精准打击 | 要塞摧毁 | 致命一击潜艇:后院打击 | 深入敌后 | 战略摧毁战斗机:防卫摧毁 | 瘫痪设施 | 定点清除轰炸机:火力覆盖 | 地毯清除 | 致命打击兔酱装备:导弹航空母...原创 2019-09-28 15:27:21 · 155 阅读 · 0 评论 -
golang-面向对象编程下
1原创 2019-10-08 16:01:45 · 267 阅读 · 0 评论 -
golang-基础上
搭建环境下载自己操作系统对应的SDK,推荐.msi文件一键安装https://studygolang.com/dl下载编辑器vscodehttps://code.visualstudio.com/创建编写go文件创建工程目录goproject\src\gocode\project1\main在main目录下file创建hello.go文件package main //...原创 2019-07-12 16:29:45 · 687 阅读 · 0 评论