红茶的个人站点

  • 首页
  • 专栏
  • 开发工具
  • 其它
  • 隐私政策
Go语言编程笔记
Go语言编程学习中的总结
Go语言编程笔记

Go语言编程笔记18:软件测试

图源:wallpapercave.com 软件测试也是软件开发的重要组成部分,本篇文章将探讨如何使用Go的标准库和第三方库对程序进行测试。 testing Go的标准库提供一个简单的包testing用于构建测试用例,这里来看一个简单的程序: package main ​ import "fmt" ​ func Add(a int, b int) int { return a + b } ​ func main() { fmt.Printf("%d+%d=%d\n", 1, 2, Add(1, 2)) } 虽然可以在…

2022年1月2日 0条评论 1201点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记17:Web Service

图源:wallpapercave.com 通过一系列文章,我介绍了如何用Go语言构建一个Web应用,准确的说是一个网站。事实上并非所有的Web应用都是以网站的形式存在,其中相当一部分是Web Service,相比前者,后者的应用范围更广泛,它的前端可能是纯Js编写的网站前端,也可能是移动APP,甚至是另一个Web应用。 所以这篇文章将介绍如何构建一个Web Service。 这里的Web Service概念和Apache之类的有所不同,它指那些通过API方式提供服务的Web应用。 在说明Web Service之前,…

2022年1月1日 0条评论 1408点热度 1人点赞 魔芋红茶 阅读全文
Go语言编程笔记

Go语言编程笔记16:存储数据

图源:wallpapercave.com 几乎任何程序都绕不开读写数据,只不过具体的数据存储介质和方式有所不同。本篇文章将从多种数据存储方式进行探讨各种存储方式如何实现以及优劣。 内存 最简单也是最容易想到的方式大概就是用内存存储数据,事实上这也是大多数初学者不经意间最先学到的。 乍一听用内存存储数据显得很高级,其实所有程序运行时申请的变量都是在使用内存来存储数据。 不过作为Web应用,使用内存存储数据必须考虑并发,所以应当使用通道或者互斥锁来实现并发的数据读写。这里给出一个简陋的论坛应用。这个非常简陋的应用只实现…

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

Go语言编程笔记15:模版引擎

图源:wallpapercave.com 除去一些作为API使用或者其他特殊用途的Web应用,大多数Web应用都是以网站的形式对外提供服务,所以自然的,返回的HTTP响应内容也都是以HTML页面为主。在Go语言编程笔记12:web基础中我提到过,在Web技术发展的过程中,因为对交互的需要,Web诞生了一种SSI技术,即在服务端通过编程语言来“动态”生成HTML页面并返回给客户端。这种技术进一步发展,最后的结果就是我们现在经常在Web开发中会提到的模版引擎。 模版引擎 所谓的模版引擎,其功能相当明确和单一:就是负责将…

2021年12月27日 0条评论 1206点热度 0人点赞 魔芋红茶 阅读全文
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条评论 1272点热度 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条评论 1199点热度 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条评论 1185点热度 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条评论 1263点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

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

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

2021年11月26日 0条评论 1286点热度 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人点赞 魔芋红茶 阅读全文
123

魔芋红茶

加一点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 学习笔记 6:消息队列 Redis 学习笔记 5:分布式锁 Redis 学习笔记 4:优惠券秒杀 Redis 学习笔记 3:黑马点评 Redis 学习笔记 2:Java 客户端 Redis 学习笔记 1:基础
Redis 学习笔记 4:优惠券秒杀Redis 学习笔记 5:分布式锁Redis 学习笔记 6:消息队列
从零开始 Spring Boot 47:缓存 厉害了,我的中药 网易邮箱大师使用排雷 JavaWeb 学习笔记 3:Servlet 虎头蛇尾,不及预期——《长津湖》 JavaWeb 学习笔记 9:Vue
最近评论
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号