随笔分类 -  Golang

摘要:[toc] 1、Map概念 说到map就会想到python的map函数,其实它就是Golang的字典 2、Map初始化 map的初始化是先要声明map,指定key和value的类型,而这时候生成的map就是一个nil map,当要使用该map的时候就需要通过make函数给nil map创建一个非ni 阅读全文
posted @ 2020-04-22 23:22 jasonminghao 阅读(802) 评论(0) 推荐(0)
摘要:[TOC] Gin框架 Gin是一个golang的为框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点 对于golang而言,web框架依赖远比Pyton、Java之类的要小。自身的net/http住足够简单,性能也非常不错 借助框架开发,不仅仅可以省去很多常用的封装带来 阅读全文
posted @ 2020-03-04 22:54 jasonminghao 阅读(650) 评论(0) 推荐(0)
摘要:[TOC] NSQ NSQ是一个实时分布式消息传递平台,设计用于大规模操作,能每天处理数十亿条消息。 它促进了没有单点故障的分布式和分散拓扑,支持容错和高可用性,并提供可靠的消息传递保证。 优缺点 优点: 1、部署非常方便,没有任何环境的依赖,一个二进制可执行文件 2、轻量级没有过多的配置参数,只需 阅读全文
posted @ 2020-03-01 00:37 jasonminghao 阅读(1784) 评论(0) 推荐(0)
摘要:Redis概述 是业界主流的 ,`nosql string list set zset hash`(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样, 阅读全文
posted @ 2020-03-01 00:31 jasonminghao 阅读(1014) 评论(0) 推荐(0)
摘要:[TOC] 数据库 很多时候我们都是把数据存储在文件中,例如:xxx.txt,读取都需要对文件进行操作,那如果数据特别多,我们就得创建N个文件,并且非常不好管理,性能也差,所以就出来了 这个概念, 本生也是一套软件系统,它存储数据的本质还是文件,有了数据库这套系统,我们只需要学会怎么去使用这套系统即 阅读全文
posted @ 2020-02-29 22:14 jasonminghao 阅读(438) 评论(0) 推荐(0)
摘要:json数据处理方法一 我们可以直接将json数据映射到预定义好的结构体中,但是必须要确保json的字段和结构体必须要一致 假设我们有如下data.json文件: 代码示例: go package main import ( "encoding/json" "fmt" "io/ioutil" ) t 阅读全文
posted @ 2020-02-28 19:55 jasonminghao 阅读(4838) 评论(0) 推荐(1)
摘要:[TOC] 0、前言 Go语言中内置 包提供了HTTP客户端和服务端的实现 1、HTTP服务端 模拟一个HTTP服务端。 go package main import ( "encoding/json" "fmt" "io/ioutil" "net/http" ) // 定义客户端提交的post请求 阅读全文
posted @ 2020-02-28 17:08 jasonminghao 阅读(2048) 评论(0) 推荐(0)
摘要:[TOC] 1、channel 单纯将函数实现并发是没有任何意义的,函数与函数之间需要交换数据才能够体现并发执行函数的意义。 虽然可以使用共享内存进行数据交换,但是共享内存在不同的 中容易发生竞态情况。为了保证数据交换的正确性,必须使用互斥量对内存进行加锁,这种做法肯定会造成性能影响。 Go语言的并 阅读全文
posted @ 2020-02-23 01:10 jasonminghao 阅读(793) 评论(0) 推荐(0)
摘要:[TOC] 0、Go语言中的并发编程 并发:同一时间段内执行多个任务(你在用微信和两个女朋友聊天) 并行:同一时刻执行多个任务(你和你朋友都在用微信和女朋友聊天) Go语言的并发通过 实现。 类似于线程,属于用户态的线程,我们可以根据需要创建成千上万个 并发工作。 是由Go语言的运行时(runtim 阅读全文
posted @ 2020-02-23 01:09 jasonminghao 阅读(259) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2020-02-17 14:14 jasonminghao 阅读(4) 评论(0) 推荐(0)
摘要:前言 Golang提供的日志库过于基础,对于更精细的日志级别、日志文件切割以及日志分发等方面不提供支持,不适用于线上/生产环境,所以就催生了很多第三方日志库。 实现功能 1、日志级别:Debug、Info、Warn、Error、Fatal 2、日志文件还分为:标准日志文件(记录Debug、Info、 阅读全文
posted @ 2020-02-16 19:30 jasonminghao 阅读(1468) 评论(0) 推荐(0)
摘要:[TOC] 0、前言 在大多数语言中对于文件操作是必不可少的一个内容,那么在Go中os提供了文件的基本操作,除此以外为了追求便捷以及性能之上,Go 还在 以及 提供一些其他函数供开发者使用 1、文件读取 1.1、os.open文件读取 os.open打开文件后赋给file然后通过read的方法读取并 阅读全文
posted @ 2020-02-16 16:15 jasonminghao 阅读(420) 评论(0) 推荐(0)
摘要:前言 学习第3天,基于函数的方式编写小项目:学生管理系统 代码 go package main import ( "fmt" "os" ) / 函数版学生管理系统 写一个系统能够查看所有的学生/新增学生/删除学生 / var ( allStudent map[int64] student // 变量 阅读全文
posted @ 2020-02-14 21:26 jasonminghao 阅读(310) 评论(0) 推荐(0)
摘要:前言 学习第4天,基于结构体的方式对函数版本重构编写小项目:学生管理系统 代码 go package main import ( "fmt" "os" ) // 菜单系统(将菜单系统封装到函数中) func showMenu(){ fmt.Println("欢迎光临学生管理系统") fmt.Prin 阅读全文
posted @ 2020-02-14 21:25 jasonminghao 阅读(618) 评论(0) 推荐(0)
摘要:[TOC] 0、前言 Go语言中没有“类”的概念,也不支持“类”的继承等面向对象的概念。Go语言中通过结构体的内嵌再配合接口比面向对象具有更高的扩展性和灵活性。 1、类型别名和自定义类型 自定义类型 在Go语言中有一些基本的数据类型,如 、`整型 浮点型 布尔 type`关键字来定义自定义类型。 自 阅读全文
posted @ 2020-02-13 23:52 jasonminghao 阅读(275) 评论(0) 推荐(0)
摘要:Go 具有指针。 指针保存了变量的内存地址。 1. :取内存地址(会生成一个指向其作用对象的指针) 2. :根据地址取值(指向的底层值) 阅读全文
posted @ 2020-02-12 21:12 jasonminghao 阅读(125) 评论(0) 推荐(0)
摘要:​ [TOC] 1、数组概念 数组是类型相同的元素集合,比如整数:1,39,90,100的集合就构成了一个数组,Go不允许在数组中混合使用不同类型的元素(比如整数和字符串) 1.1、数组声明 数组声明方式有太多了,下面一一介绍 简单声明式 上面 声明了一个长度为2,类型为整型的数组,数组中的所有元素 阅读全文
posted @ 2020-02-12 14:45 jasonminghao 阅读(297) 评论(0) 推荐(0)
摘要:[TOC] 0、前言 time包提供了时间的显示和测量用的函数。日历的计算采用的是公历。 1、时间类型 类型表示时间。我们可以通过 函数获取当前的时间对象,然后获取时间对象的年月日时分秒等信息。示例代码如下 2、时间戳 时间戳是自1970年1月1日(08:00:00GMT)至当前时间的总毫秒数。它也 阅读全文
posted @ 2020-02-12 00:39 jasonminghao 阅读(306) 评论(0) 推荐(0)
摘要:[TOC] 0、前言 函数存在的意义? 函数是一段代码的封装 把一段逻辑抽象出来封装到一个函数中,给它起个名字,每次用到它的时候直接用函数名调用即可 使用函数能够让代码结构更清晰,更简洁。 1、函数基本概念 函数是Go语言里的核心设计,它通过关键字 来声明,它的格式如下: 关键字func用来声明一个 阅读全文
posted @ 2020-02-11 16:01 jasonminghao 阅读(415) 评论(0) 推荐(0)
摘要:[TOC] 0、什么是流程控制? 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的 Go语言中最常用的流程控制有 和`for switch goto`主要是为了简化代码,降低重复代码而生的结构,属于扩展类的流程控制 1、for循环 Go语言中的所有循环类型均可以使用 阅读全文
posted @ 2020-02-11 15:58 jasonminghao 阅读(189) 评论(0) 推荐(0)