红茶的个人站点

  • 首页
  • 专栏
  • 开发工具
  • 其它
  • 隐私政策
专栏
系列文章
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条评论 1385点热度 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条评论 1460点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

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

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

2021年11月26日 0条评论 1496点热度 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条评论 1493点热度 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条评论 1212点热度 0人点赞 魔芋红茶 阅读全文
Go语言编程笔记

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

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

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

Go语言编程笔记6:接口

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

2021年11月21日 0条评论 1243点热度 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条评论 1234点热度 0人点赞 魔芋红茶 阅读全文
腾讯云博客搭建

记一次博客搬家

最近趁着双11入了阿里云,因为腾讯云当时只买了1年试水,现在续费的话实在是遭不住。 需要说明的是,主机、域名都需要ICP备案,所以新买的阿里云又折腾了一番进行备案,万幸的是如果之前备案过域名和主机,只是要添加一台新的主机到原备案的话,审核速度是非常快的,我这里1个工作日就搞定了。 顺带一提,阿里云会按备案耽搁的天数进行时间补偿,会将你的服务器到期时间顺延相应的天数,腾讯云就没这福利...... VPS准备好后就需要折腾一下,把腾讯云上的服务搬迁到阿里云了,其它服务倒也不重要,主要还是要先把博客搬过来,以下就是博客搬…

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

Go语言编程笔记4:结构体和切片

图源:wallpapercave.com 结构体 Go语言最主要使用的复合结构是结构体,我记得C和C++也是有结构体的,不过在C++中并不常用。事实上从语言继承的关系来说,Go语言与C语言是一脉相承的,所以又被称为类C语言。 定义 定义一个结构体就像是定义一个新的类型,只不过结构体一般会在结构体内部定义一些额外字段: package main ​ type Pointer struct { x int y int } 这里需要注意的是,虽然Go语言里的结构体可以类比为其它语言中的类,但是Go语言并没有“结构体命名时…

2021年11月8日 0条评论 1496点热度 2人点赞 魔芋红茶 阅读全文
1…1415161718…27

魔芋红茶

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

技术栈
  • SpringBoot SpringBoot
  • SpringMVC SpringMVC
  • MySQL MySQL
  • Java Java
  • php php
  • Go lang Go lang
  • Linux Linux
  • 设计模式 设计模式
  • HTTP HTTP
  • Wordpress Wordpress
  • Python Python
  • Activiti Activiti
  • Redis Redis
  • SpringCloud SpringCloud
  • debug debug
  • 前端开发 前端开发
  • Maven Maven
  • 生活随笔 生活随笔
项目
  • Spring Easy Spring Easy
  • MD-img MD-img
  • oa-demo oa-demo
  • activiti-util activiti-util
  • 油猴脚本 油猴脚本
  • i-tree i-tree
  • auto-hot-key auto-hot-key
  • bilibili-down bilibili-down
  • haokan-down haokan-down
  • PEP中文 PEP中文
  • M3U-Helper M3U-Helper
工具箱
  • 我的Windows软件列表 我的Windows软件列表
Music
最新 热点 随机
最新 热点 随机
Vue3 学习笔记 1:开始 RuoYi 学习笔记 3:二次开发 RuoYi 学习笔记 2:常用功能 RuoYi 学习笔记 1:开始 Python 包管理工具 UV MySQL 从入门到精通 18:读写分离
开放服务器指定端口安装 ZooKeeperDEBUG:sudo 命令提示找不到 JAVA_HOME将 MySQL 修改为大小写不敏感允许异地连接 MySQLUbuntu 安装 MySQL
Maven 简易指南 II Python学习笔记25:再谈变量 Spring Boot 教程5:Starters 简介 Python学习笔记20:字典与集合 Linux 之旅 17:系统服务(daemons) Python学习笔记12:函数修饰符的应用
最近评论
魔芋红茶 发布于 4 年前(03月12日) 不好意思,上个月有点事,没空搞网站,现在弄好了,已经启用了新域名,谢谢关心~~
fuckbaidu 发布于 4 年前(02月25日) 兄弟,你新网址一直没备案成功
魔芋红茶 发布于 4 年前(12月18日) 谢谢。
啊长 发布于 4 年前(12月16日) 膜拜大佬了,希望越做越好 :exclaim:
nfmd 发布于 4 年前(10月31日) 腾讯云出了个60块六年多的bug
友情链接
  • NFMD's blog
  • 小金龙的blog
  • 幸哥的blog

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

Theme Kratos Made By Seaton Jiang

宁ICP备2021001508号

宁公网安备64040202000141号