自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (1)
  • 收藏
  • 关注

原创 gonic之中间件实现-异常恢复

最近公司要求更新自研框架,就顺便看了一下gonic的框架实现,代码不多,感觉主要有两个特点,第一个httprouter来实现路由,第二个就是异常恢复,更深入看后原来是中间件,httprouter就不多说了,现记录一下中间件的实现,以便后面需要。 简单的运行一下框架 engine := gin.Default() engine.GET("/index", foo) engine.Run(":8...

2018-05-23 16:58:43 557

原创 golang之slice和map比较

最近在看golang的时候发现golang的map类型的元素比较特殊,也就是不能够取地址。因为map实际上是一张hash表,当map元素数量增加的时候,当前分配的内存不足以存放新的数据,就会重新分配更大的内存空间,并把原有的数据迁移过来。因此以前的地址保存的就不是当前map中的元素了。 思考了一下,slice应该也是类似的但是slice是允许取地址操作的,因此做了一个小验证: s1 := m...

2018-02-09 16:51:39 1759

原创 shell命令分类

linux的shell命令总共分为5中,alias,function,file,builtin,keyword。 alias就是别名,function就是自己创建的shell函数,file就是path路径里的一些二进制或者其他sh文件等挂在硬盘上的文件,keyword就是shell的关键字。 可以通过type -t command来查看,另外如果一个命令是file的话,可以通过type -p ...

2018-02-04 19:49:01 950

原创 linux脚本运行之选婿

首先进入到~/shell目录下,编写一个非常简单的脚本   $cd ~/shell $vi echo.sh #!/bin/bash echo "hello" 赋予脚本可执行权限并运行该脚本     $chmod +x echo.sh $./echo.sh hello 脚本非常简单,但是执行过程还是要理清楚。我们都知道linux的程序都是静态编译的但脚本如php脚本,shell...

2018-02-04 19:04:17 178

原创 设计模式之golang实现策略

package strategy type cashCal interface { cashCal(float64) float64 } type deal struct{} type normalDeal struct { deal } func (nd *normalDeal) cashCal(Price float64) float64 { return Price } t...

2018-01-30 16:55:12 318

原创 设计模式之golang实现-简单工厂模式

最近玩了一段时间的golang之后想着练练手,想着以前看过大话设计模式,就想着实现一下。   package easyfactory import "errors" type operation struct { } type cal interface { cal(int, int) (float64, error) } type operationAdd struct { o...

2018-01-30 10:09:43 596

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除