Go Web编程## 《Go Web 编程》 因为自己对Web开发比较感兴趣,所以最近抽空在写一本开源的书籍《Go Web编程》《Build Web Application with Golang》。写这本书不表示我能力很强,而是我愿意分享,和大家一起分享Go写Web应用的一些东西。 - 对于从PHP/Python/Ruby转过来的同学了解Go怎么写Web应用开发的 对于从C/C++转过来的同学了解Web到底是怎么运行起来的 和“下一节”的链接。 ## 代码 代码要go fmt后提交。注释文件注明其所属章节。 ## 如何编译 build.go依赖markdown的一个解析包,所以第一步先 go get github.com/russross/blackfriday 这样读者就可以把相应的Markdown文件编译成html文件,执行go build build.go,执行生成的文件,就会在底目录下生成相应的html文件 欢迎大家加入QQ群:259316004《Go Web编程》专用交流群 大家有问题还可以上德问上一起交流学习:http://www.dewen.org/topic/165 ## 致谢 首先要感谢Golang-China的QQ群102319854,里面的每一个人都很热心,同时要特别感谢几个人 • 四月份平民 (review代码) Hong Ruiqi (review代码) • BianJiang(编写go开发工具Vim和Emacs的设置)0 码力 | 295 页 | 5.91 MB | 2 年前3
Go语言基础
Golang Fundaments## Go语言基础 Golang Fundaments 中山大学 数据科学与计算学院 潘茂林 panml@mail.sysu.edu.cn ## 大纲 • Golang-设计哲学 • 基础知识学习 • Go语言的入门资源 • 本地项目工作空间组织 • 开始编程 ## Golang-设计哲学 ## 我们需要什么样的语言 曾经 我们对包含大量代码的程序印象深刻。 - 我们努力在代码库中创建大型抽象。 这是一个有效的程序吗? - 是正确的吗? - 按时完成了吗? - 花了成本(时间、空间复杂度)? 渴望成为质量、效率和简单的冠军。 • 有自己的观点。 • 重视反省和自我检讨。 ## Go语言应该是这样的 · 易于阅读代码 - 对遗存软件友好 • 心智模型 • 生产率与性能 • 正确性与性能 • 规则 • 方便代码评审 - 完整性 - 可读性 - 简单性 - 性能 Golang-设计哲学 面向数据的设计(Data-Oriented Design) “数据占主导地位。如果您选择了正确的数据结构,并且组织得很好,那么算法几乎总是不言自明的。数据结构,而不是算法,是编程的核心。”——罗伯·派克 - 接口和组合设计(Interface And Composition Design) - 接口赋予程序结构。 - 接口鼓励通过组合进行设计。 - 接口使得并强制清晰划分组件职责。0 码力 | 21 页 | 851.30 KB | 2 年前3
可视化学习 Go 并发编程## 可视化学习 Go 并发编程 2017.8.5 黄庆兵 - 网易 bingohuang.com ## 并发 简单来说,并发是一种构造程序的方式  ## Concurrency is not Parallelism Slide (http://talks & 并行(Parallelism) 一图胜千言! • 并行(PARALLELISM) 这是并行 (/2017/go-concurrency-visualize/parallelism.html) • 并发(CONCURRENCY) 这是并发 (/2017/go-concurrency-visualize/pingpong36.html) 为什么要关注并发?当今是多核的时代,并发的世界 多核的时代  并发编程并不容易,但 Go 对并发有很好的支持 ## Go 语言中的并发 • goroutine - 并发执行 • channel - 同步和消息传输 • select - 多路并发控制 ## Goroutine - 类似于 UNIX0 码力 | 29 页 | 1.48 MB | 2 年前3
2.2.3 Go语言的抢占式调度## Go 语言的抢占式调度  曹春晖 资深 Gopher  Go 程序的启动 新版本的抢占实现 05 当前的 Go 语言还有哪些问题 06 ## 第一部分 ## Go 程序的启动 ## 编译过程 ### Go 程序 hello.go 的编译过程: ●●● package main func main() { println("hello world") } ●●● go build hello.go ●●●  4. } 5. 6. // 我们需要一个比较函数来比较值的大小以了解顺序 7. // 负数表示小于,0表示等于,正数表示大于0 码力 | 16 页 | 346.04 KB | 2 年前3
1.6 Go并发编程实践 - 晁岳攀Go并发编程实践 晁岳攀 @colobu 微博 http://colobu.com 探探 Gopher China 2019 Agenda 基本同步原语 扩展同步原语 原子操作 Channel 内存模型 ’ alt=‘OCR图片’/> 基本同步原语 ’ alt=‘OCR图片’/> 基本同步原语 Mutex 互斥锁 Mutual exclusion, 任何 oroutine占优势,会有更大的机会获取锁。 2015年,commit edcad863,Go1.5中mutex实现为全协作式的,增加了spin机制,一旦有竞争,当前goroutine就会进入调度器。在临界区执行很短的情况下可能不是最好的解决方案。 2016年commit0556e262,Go1.9中增加了饥饿模式,让锁变得更公平,不公平的等待时间限制在1毫秒,并且修复了一个大bug,唤 NewCond(&m) ready := make(chan struct{}) isReady := false for i := 0; i < 10; i++ { i := i go func() { m.Lock() time.Sleep(rand...) ready <- struct{}{} for0 码力 | 82 页 | 16.62 MB | 1 月前3
MoonBit月兔编程语言 现代编程思想 第十二课 案例:自动微分现代编程思想 案例:自动微分 Hongbo Zhang ## 微分 • 微分被应用于机器学习领域 ◦ 利用梯度下降求局部极值 牛顿迭代法求函数解: $ x^{3}-10x^{2}+x+1=0 $ • 我们今天研究简单的函数组合 ○ 例: $ f(x_{0},x_{1})=5x_{0}^{2}+x_{1} $ ■ $ f(10,100)=600 $ ■ $ \frac{\partial ■ 缺点:计算机无法精准表达小数,且绝对值越大,越不精准 符号微分:Mul(Const(2), Var(1)) -> Const(2) ■ 缺点:计算结果可能复杂;可能重复计算;难以直接利用语言原生控制流 1. // 需要额外定义原生算子以实现相同效果 2. fn max[N : Number](x : N, y : N) -> N { 3. if x.value() < ■ 缺点:计算机无法精准表达小数,且绝对值越大,越不精准 符号微分:Mul(Const(2), Var(1)) -> Const(2) ■ 缺点:计算结果可能复杂;可能重复计算;难以直接利用语言原生控制流 ◦ 自动微分:利用复合函数求导法则、由基本运算组合进行微分 ■ 分为前向微分和后向微分 ## 符号微分 ## • 我们以符号微分定义表达式构建的一种语义 1. enum Symbol0 码力 | 30 页 | 3.24 MB | 2 年前3
MoonBit月兔编程语言 现代编程思想 第十三课 案例:神经网络## 现代编程思想 ## 案例:基于梯度下降的神经网络 Hongbo Zhang ## 案例:鸢尾花 • 鸢尾花数据集是机器学习中的"Hello World" ☐ 1936年发布 包含对3种鸢尾花的测量,各有50个样本 ☐ 每个样本包含4项特征:花萼与花瓣的长度和宽度 目标 ☐ 通过特征,判断属于哪一类鸢尾花 ◦ 构建并训练神经网络,正确率95%以上 ## 神经网络0 码力 | 17 页 | 521.66 KB | 2 年前3
Go语言 - 一些简单的读书分享By Xargin ## 我出版的书 Go语言 高级编程 Advanced Go Programming 柴树杉 曹春晖/著  · 我是作者之一 - 这本书在写的时候国内的 Go 语言书很少 • 现在销量约 2w+ - 直到现在,CGO code can make them go fast in the short term we can clean it up later get to the market first ## 这个是我在读架构整洁之道的时候做的笔记 tdd is slow avoid overconfidence take arch seriously 在 C 语言里,通过 h 和 c 文件分离,就可以达成完美的封装,在 文件分离,就可以达成完美的封装,在 c 中的变量外部是没有办法看到或者访问的 Encapsulation 之后的面向对象语言在封装上实际上有弱化,像 C++ 和 java,即使不想暴露在外部的变量,也必须在 .h 或 class 声明中写明 private c**是因为技术原因 需要知道每个class Java 干脆连声明和法分离了,是一种退 public and priv 种 hack c0 码力 | 16 页 | 9.09 MB | 2 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













