文章分类 - 够浪
golong 基础
摘要:channel 是 golang 中最核心的 feature 之一,因此理解 Channel 的原理对于学习和使用 golang 非常重要。 channel 是 goroutine 之间通信的一种方式,可以类比成 Unix 中的进程的通信方式管道。 CSP 模型 在讲 channel 之前,有必要先
阅读全文
摘要:1 // package main 2 3 // import ( 4 // "encoding/json" 5 // "fmt" 6 // "io" 7 // "log" 8 // "strings" 9 // "os" 10 // ) 11 // type Message struct { 12
阅读全文
摘要:连接 import "github.com/garyburd/redigo/redis" func main() { c, err := redis.Dial("tcp", "localhost:6379") if err != nil { fmt.Println("conn redis faile
阅读全文
摘要:目前 Internet 上流行的网站构架方式是 LAMP,其中的 M 即 MySQL, 作为数据库,MySQL 以免费、开源、使用方便为优势成为了很多 Web 开发的后端数据库存储引擎。 MySQL 驱动Go 中支持 MySQL 的驱动目前比较多,有如下几种,有些是支持 database/sql 标
阅读全文
摘要:Go的http有两个核心功能:Conn、ServeMux Conn的goroutine 与我们一般编写的http服务器不同, Go为了实现高并发和高性能, 使用了goroutines来处理Conn的读写事件, 这样每个请求都能保持独立,相互不会阻塞,可以高效的响应网络事件。这是Go高效的保证。 Go
阅读全文
摘要:Go搭建一个Web服务器 前面小节已经介绍了Web是基于http协议的一个服务,Go语言里面提供了一个完善的net/http包,通过http包可以很方便的就搭建起来一个可以运行的Web服务。同时使用这个包能很简单地对Web的路由,静态文件,模版,cookie等数据进行设置和操作。 http包建立We
阅读全文
摘要:goroutine是Go并行设计的核心。goroutine说到底其实就是线程,但是它比线程更小,十几个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现了这些goroutine之间的内存共享。执行goroutine只需极少的栈内存(大概是4~5KB),当然会根据相应的数据伸缩。也正
阅读全文
摘要:interface Go语言里面设计最精妙的应该算interface,它让面向对象,内容组织实现非常的方便 什么是interface 简单的说,interface是一组method的组合,我们通过interface来定义对象的一组行为。 我们前面一章最后一个例子中Student和Employee都能
阅读全文
摘要:method 现在假设有这么一个场景,你定义了一个struct叫做长方形,你现在想要计算他的面积,那么按照我们一般的思路应该会用下面的方式来实现 package main import "fmt" type Rectangle struct { width, height float64 } fun
阅读全文
摘要:Go 语言中,也和 C 或者其他语言一样,我们可以声明新的类型,作为其它类型的属性或字段的容器。例如,我们可以创建一个自定义类型 person 代表一个人的实体。这个实体拥有属性:姓名和年龄。这样的类型我们称之 type person struct { name string age int } 一
阅读全文
摘要:如果想要重复执行某些语句,Go 语言中您只有 for 结构可以使用。不要小看它,这个 for 结构比其它语言中的更为灵活。 注意事项 其它许多语言中也没有发现和 do while 完全对等的 for 结构,可能是因为这种需求并不是那么强烈。 1 基于计数器的迭代 文件 for1.go 中演示了最简单
阅读全文
摘要:相比较 C 和 Java 等其它语言而言,Go 语言中的 switch 结构使用上更加灵活。它接受任意形式的表达式: switch var1 { case val1: ... case val2: ... default: ... } 变量 var1 可以是任何类型,而 val1 和 val2 则可
阅读全文
摘要:if-else 结构 if 是用于测试某个条件(布尔型或逻辑型)的语句,如果该条件成立,则会执行 if 后由大括号括起来的代码块,否则就忽略该代码块继续执行后续的代码。 if condition { // do something } 如果存在第二个分支,则可以在上面代码的基础上添加 else 关键
阅读全文
摘要:1.复合数据类型主要有 数组 Slice Map 结构体 JSON 2.符合数据类型详细 2.1 数组 在复合数据类型中数组是由同构的元素组成——每个数组元素都是完全相同的类型——结构体则是由异构的元素组成的。数组和结构体都是有固定内存大小的数据结构。数组的每个元素都被初始化为元素类型对应的零值,对
阅读全文
摘要:1.基本数据类型概述 整型 浮点型 复数 布尔型 字符串 常量 整型运算 2.数据类型详细 2.1.整型(Go语言同时提供了有符号和无符号类型的整数运算) 有符号整形数类型: int8,长度:1字节, 取值范围:(-128 ~ 127) int16,长度:2字节,取值范围:(-32768 ~ 327
阅读全文
摘要:Go特点 我们学习一门语言总归是出于各种各样的原因的,他会是各式各样的原因。 那既然现在我有了一个想要了解 Go 的一个意愿,肯定要先知道该语言有那些特色,或者说有那些吸引人的地方的说。 1.效率 开发效率高 运行速度快 关于究竟是选择开发速度还是执行速度这个问题,Go 选择了折中,他即要开发速度,
阅读全文

浙公网安备 33010602011771号