红茶的个人站点

  • 首页
  • 专栏
  • 开发工具
  • 其它
  • 隐私政策
专栏
系列文章
Go语言编程笔记

Go语言编程笔记14:处理请求

图源:wallpapercave.com 上一篇Go语言编程笔记13:处理器中我们讨论了如何创建一个Web应用并接收请求,本篇文章探讨如何来处理请求。 Request 在Go语言编程笔记12:web基础中我们说过了,一个HTTP请求实际上就是一个HTTP请求报文,内容主要由首行、报文头、空行、报文体四个部分组成。 在http库中,请求报文被抽象为http.Request这个结构体: type Request struct { Method string URL *url.URL Proto      string …

2021年12月25日 0条评论 1274点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记13:处理器

图源:wallpapercave.com 一个完整的Web应用,其功能可以主要划分为:接收请求、处理请求、生成返回数据、返回数据这几个部分。今天来讨论如何使用Go的标准库http来接收http请求。 处理器和Server 如在上一篇笔记Go语言编程笔记12:web基础中展示的那样,一个最简单的Go编写的Web应用可能是这样的: package main ​ import "net/http" ​ func main() { http.ListenAndServe(":8080", nil) } 代码很简单,但运行后…

2021年12月22日 0条评论 1200点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记12:web基础

图源:wallpapercave.com 开一个新坑,用Go来做web开发。虽然已经从事多年基于LAMP的web开发,但最近学习了Go编程,所以打算借着学习《Go Web 编程》一书的同时撰写笔记,算是对web开发的复习和回顾。 《Go Web 编程》作者为新加坡人,从事编程相关教学工作,此书主要内容为使用Go的标准库实现一个web应用,并借此阐述HTTP和web开发的相关理念和技能。 本篇笔记的大纲是我用幕布编写的思维导图,可以在这里查看。 Go开发web的优势 虽然说任何一门编程语言都可以在几乎所有的领域使用,…

2021年12月18日 0条评论 1187点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记11:使用包组织代码

图源:wallpapercave.com Go语言的代码是以包的形式组织的,本篇笔记将阐述包相关的一些内容。 基本概念 创建 环境变量 Go有两个和包相关的系统环境变量:GOROOT和GOPATH。前者是Go语言本身的安装目录,后者是用户的“Work Space”,也就是一般的编写代码的目录。 这两个目录都主要由以下三个字目录构成: bin:二进制可执行文件。 pkg:编译后的包组件。 src:源码。 对于GOROOT的目录来说,子目录所对应的内容都是Go语言本身的内容,比如bin下有go.exe和gofmt.ex…

2021年11月28日 0条评论 1264点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记10:使用共享变量实现并发(续)

图源:wallpapercave.com 本篇笔记是Go语言编程笔记9:使用共享变量实现并发的补充,将以一个《Go程序设计语言》中列举的一个函数缓存示例为基础进一步阐述如何使用并发来解决实际问题,以及说明goroutine和操作系统线程的区别。 函数缓存 所谓的函数缓存,就是对某些极其耗费时间或计算资源的函数调用进行缓存,如果系统中需要再次进行相同调用,直接返回缓存的结果,以达到节省时间或者计算资源的目的。 以下的代码为参考《Go程序设计语言》中的示例后编写。 首先我们先确定需要缓存的函数: func getUrl…

2021年11月26日 0条评论 1298点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记9:使用共享变量实现并发

图源:wallpapercave.com 数据竞态 在多线程编程中,遇到的最大麻烦就是当多个线程对同一个数据进行操作时,因为代码交错执行引发的一些问题: package main ​ import ( "fmt" "sync" ) ​ type bank struct { amount int } ​ func (b *bank) SaveMoney(amount int) { b.amount += amount } ​ func (b *bank) GetAmount() int { return b.amou…

2021年11月25日 0条评论 1302点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记8:goroutine续

图源:wallpapercave.com 本篇笔记会讲解Go语言编程笔记7:goroutine和通道中剩余的内容。 文件统计程序 Linux上有一个程序du,可以很方便地计算指定目录的真实大小,《Go程序设计语言》一书中也有一个类似的示例: package main ​ import ( "flag" "fmt" "io/ioutil" "log" "path" "time" ) ​ var paramHuman = flag.Bool("h", false, "human show") ​ func main()…

2021年11月24日 0条评论 1147点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记7:goroutine和通道

图源:wallpapercave.com goroutine Python中并发的核心概念是协程,Go语言中类似的概念叫做goroutine。虽然两者在原理和使用方式等方面都有很大不同,但都是用于解决并发问题的核心概念。 协程(coroutine)与goroutine从名称上看就很相似。 我们知道,Python因为有全局线程锁的缘故,除了发生I/O的部分以外,大部分使用协程实现并发的时候实际上都是单线程在执行,事实上并不能挖掘多线程的全部性能,对于I/O密集型的应用的确是可以解决问题,但对于计算密集型的应用就无能为…

2021年11月23日 0条评论 1196点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记6:接口

图源:wallpapercave.com 虽然Go语言没有传统编程语言的类与继承,但通过结构、方法和接口,Go语言依然可以实现OOP式的编程。所以接口对于Go语言来说相当重要,这里我们就讨论一下Go语言中的接口。 概念 在介绍Go语言中的接口之前我要先阐述一下其概念的不同,与传统的编程语言比,Go语言的接口是一种隐性实现。即接口只会定义一组方法,所有实现了该方法的类型都满足该接口。 在概念上,这与Python中的协议更类似,不过后者并不会真实定义在代码中,仅仅是文档中的一种约定。 定义 定义接口很简单: packa…

2021年11月21日 0条评论 1185点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记5:函数

图源:wallpapercave.com 虽然整体上Go语言的函数和其它语言颇为相似,但实际上有很多其它语言中鲜见的特性,在这篇笔记中我会一一进行介绍。 定义 Go语言中的函数定义与传统语言类似,其函数签名同样由函数名、参数列表、返回值构成,只不过写法稍有区别: package main ​ import "fmt" ​ func myFunc(message string) bool { fmt.Println(message) // hello return true } ​ func main() { myF…

2021年11月17日 0条评论 1180点热度 0人点赞 魔芋红茶 阅读全文
1…1011121314…23

魔芋红茶

加一点PHP,加一点Go,加一点Python......

专栏
  • SpringMVC 学习笔记 SpringMVC 学习笔记
  • MySQL学习笔记 MySQL学习笔记
  • Spring Boot学习笔记 Spring Boot学习笔记
  • Java编程笔记 Java编程笔记
  • php学习笔记 php学习笔记
  • Go语言编程笔记 Go语言编程笔记
  • 设计模式 with Python 设计模式 with Python
  • Linux之旅 Linux之旅
  • 腾讯云博客搭建 腾讯云博客搭建
  • HTTP学习笔记 HTTP学习笔记
项目
  • M3U-Helper M3U-Helper
  • Markdown-img Markdown-img
  • PEP中文翻译项目 PEP中文翻译项目
工具箱
  • 我的Windows软件列表 我的Windows软件列表
点歌台
最新 热点 随机
最新 热点 随机
Redis 学习笔记 7:达人探店 Redis 学习笔记 6:消息队列 Redis 学习笔记 5:分布式锁 Redis 学习笔记 4:优惠券秒杀 Redis 学习笔记 3:黑马点评 Redis 学习笔记 2:Java 客户端
Redis 学习笔记 4:优惠券秒杀Redis 学习笔记 5:分布式锁Redis 学习笔记 6:消息队列Redis 学习笔记 7:达人探店
从零开始 Spring Boot 32:AOP II Linux 之旅 11:Linux 账号管理与 ACL 权限设置 PHP学习笔记10:类和对象 II 使用软链接节省C盘空间占用 PEP 636 -- Structural Pattern Matching: Tutorial Go语言编程笔记12:web基础
最近评论
fuckbaidu 发布于 3 年前(02月26日) 兄弟,你新网址一直没备案成功
啊长 发布于 3 年前(12月17日) 膜拜大佬了,希望越做越好 :exclaim:
nfmd 发布于 4 年前(11月01日) 腾讯云出了个60块六年多的bug
nfmd 发布于 4 年前(10月30日) str.replace("逻辑", "罗辑")
fuckbaidu 发布于 4 年前(10月14日) 并不是所有的文件都能通过软链接转移,比如chrome浏览器,你要是转移了,就不能自动更新了
友情链接
  • NFMD's blog
  • 小金龙的blog
  • 幸哥的blog

COPYRIGHT © 2021 icexmoon.cn. ALL RIGHTS RESERVED.
本网站由提供CDN加速/云存储服务

Theme Kratos Made By Seaton Jiang

宁ICP备2021001508号

宁公网安备64040202000141号