Go 语言实现 23 种设计模式 单例模式单例模式单例模式是一种常用的软件设计模式,在使用过程中,单例对象的类只有一个实例。使用单例模式,1 可以节省内存等资源,例如windows操作系统的资源管理器只有一个就够了。2 方便配置管理,例如,服务器的配置信息存放在一个文件中,配置信息由一个单例实例统一读取,进场中的其他对象通过这个单例实例获取配置信息。实例1下面这段代码有什么问题,从多线程角度思考,
Go 语言中,布尔类型的零值(初始值)为 false ,数值类型的零值为 0,字符串类型的零值为空字符串 "",而指针、切片、映射、通道、函数和接口的零值则是 nil 。nil 是 Go 语言中一个预定义好的标识符,有过其他编程语言开发经验的开发者也许会把 nil 看作其他语言中的 null ( NULL ),其实这并不是完全正确的,因为 Go 语言中的 nil 和其他语言中的 null 有很
转载 2023-08-16 17:20:01
73阅读
一.前言1.Beego框架是go语言开发的web框架。 2.beego官网网址: https://beego.me/二.项目结构基于MVC架构,其基本目录如下conf文件夹:放的是项目有关的配置文件Controllers:存放主要的业务代码main.go:项目的入口文件Models:存放的是数据库有关内容routers:存放路由文件,路由作用是根据不同的请求指定不同的控制器static:存放静态资
转载 2023-09-26 15:48:04
497阅读
程序文档Go语言中,可以使用 godoc 命令在本机启动一个可被用于查看本机所有工作区中的所有代码包文档的 Web 服务。命令行中输入如下命令并执行:godoc -http=:9090 –index在浏览器中就可以像如下输入地址查看:1.编写程序注释Go语言在注释风格中融入了 C 语言和 C++ 语言的特点。既可以使用 C++ 语言风格的行注释:// 行注释又可以使用 C 语言风格的块注释:/*
为什么需要文档自动化?技术人员对自动化的认知主要来自于“惰性和惯性”,可以代码实现的事情就不要手工编辑,“我们不是设计师”,我们追求效率,美不美是排第二位的。so,你也会明白为啥需要文档自动化吧,毕竟除了coding,技术人员主要工作就是文档,特别是在跨团队沟通的时候,在需要把技术内容输出团队之外,或者输出自己之外的人员时候。就需要一个优雅的方式,高效的方式,以及可以炫耀的方式,所以文档自动化应运
Go于2009年由谷歌推出。Init函数和main函数Init函数用于程序执行前初始化包变量 每个包可以多个,同一个包多个init执行顺序无明确定义 按照包导入依赖关系决定不同包初始化函数执行顺序 不能被调用,main函数执行前自动被调用与main函数异同相同点: 都不能有参数和返回值,都是go程序自动调用。 不同点: init可以用于不同包,可定义多个。 main只能用于main包,只能定义一个
转载 2023-05-23 14:01:47
94阅读
简介 地表 最强大、最方便 和 最流行 的 Go 语言 INI 文件操作库灵活的数据源不光光可以从文件读取配置,还支持 []byte 类型的纯数据读取和基于 io.ReadCloser 的流式读取。多种格式兼容各种文件种类的广泛支持,包括但不限于 my.cnf、.gitconfig 甚至不可解析的分区。自然类型增强将值自动转换为指定的 Go 语言原生类型,让代码更加专注于逻辑处理而不是
转载 2024-03-10 17:04:42
64阅读
Golang轻量级TCP服务器框架(三)—— 基础request封装以及router模块绑定1.思路1.1 整体思路图2.irquest接口的设计3.irouter接口的设计4.server如何集成router模块5.用户调用测试程序6.总结 原作者视频地址:zinx-Golang轻量级TCP服务器框架 本人为自学整理的文档,梳理思考开发框架的基本思路,方法,以及视频中不理解的地方。 若想学习,
## Go语言API文档简介 Go语言是一种静态类型、编译型、并发安全的程序设计语言,它具备高效的内存管理、强大的并发编程特性和简洁的语法结构。作为一门现代化的编程语言Go提供了丰富的内置API和标准库,方便开发人员快速构建高性能的应用程序。本文将从Go语言API文档的角度出发,介绍一些常用的API及其使用方法。 ### 安装Go 在开始使用Go语言API之前,首先需要安装Go语言环境。您
原创 2023-09-21 17:35:27
136阅读
1 概述结构体的基本语法请参见:Go语言中结构体的使用-第1部分结构体。 结构体除了是一个复合数据之外,还用来做面向对象编程。Go 语言使用结构体和结构体成员来描述真实世界的实体和实体对应的各种属性。也就意味着结构体类型可以类比为其他语言中的“类class”, 而结构体数据可以类比为其他语言中的 “对象”。 本文就说说结构体中,面向对象的部分。2 构造工厂函数在面向对象编程中,实例化对象时往往需要
go语言资料汇总 : https://blog.zhnytech.com/articles/2016/07/15/Golang%E5%AD%A6%E4%B9%A0%E8%B5%84%E6%96%99%E6%94%B6%E9%9B%86.htmlgo语言优秀开源项目汇总: https://blog.zhnytech.com/articles/2016/07/13/go%E8%AF%AD%E8%A8%
原创 2019-06-02 09:39:03
1110阅读
go version go1.11 windows/amd64 本文为阅读Go语言中文官网的规则说明书(https://golang.google.cn/ref/spec)而做的笔记,完整的介绍Go语言的 类型(Types)。官文的 类型Types-Method sets  -Boolean types  -Numeric types 
接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。在Go语言中接口(interface)是一种类型,一种抽象的类型。接口:接口可以调用类型里自定义的方法        1.1、go里面的接口只需要一个变量含有接口类型中的所有方法,那么这个变量就实现了接口 &n
转载 2023-07-12 14:21:18
53阅读
一.Go 语言的基础组成有以下几个部分:1.包声明 2.引入包 3.函数 4.变量 5.语句 & 表达式 6.注释// 当前程序的包名 package main // 导入其他包 import . "fmt" // 常量定义 const PI = 3.14 // 全局变量的声明和赋值 var name = "gopher" // 一般类型声明 type newType int /
转载 2023-09-29 19:07:47
83阅读
go语法基础文档一:变量和作用域1.变量声明2.并行 或 同时 赋值(两个变量的类型必须是相同)3.空白标识符(抛弃值) _二:常量1.显示定义2.隐式类型定义3.多个常量的声明4.枚举5.常量函数表达式 (函数必须是内置函数: len(), cap(), unsafe.Sizeof() )6.iota 特殊常量,可以认为是一个可以被编译器修改的常量。三:运算符四:条件语句1.if 语句2.sw
go语言基础参考文档一、   1.go语言反对函数和操作符的重载   2.go语言支持类、类成员方法、类的组合,反对继承,反对虚函数和虚函数重载;不过go语言也提供了重载,采用的是组合的文件提供。   3.go语言放弃了构造函数和析构函数   4.go语言提供接口【interface】 ,非入侵性   5.go语言主要特性:     自动垃圾回收     更丰富的内置类型   
转载 2023-07-27 16:52:49
7阅读
前言哈喽,大家好,我是asong。我们都知道在Unix中万物都被称为文件,文件处理是一个非常常见的问题,所以本文就总结了Go语言操作文件的常见方式,整体思路如下:Go语言版本:1.18本文所有代码已经上传github:https://github.com/asong2020/Golang_Dream/tree/master/code_demo/file_operate_demo操作文件包括哪些操作
转载 2023-09-01 07:55:46
72阅读
Go API 开发环境配置:Go 命令安装 Go 有多种安装方式,比如 Go 源码安装、Go 标准包安装、第三方工具(yum、apt-get 等)安装。本教程 API 运行在 Linux 服务器上,选择通过标准包来安装 Go 编译环境。Go 提供了每个平台打好包的一键安装,这些包默认会安装到如下目录:/usr/local/go。当然你可以改变它们的安装位置,但是改变之后你必须在你的环境变量中
转载 2024-01-30 00:18:57
123阅读
开发文档https://studygolang.com/pkgdocGo语言核心开发团队Ken Thompson (肯·汤普森)  : 1983年图灵奖获得者,Unix原创者之一,C语言主要发明人Rob Pike (罗布·派克)  : 贝尔实验室Unix、Plan 9操作系统成员,创出广泛使用的 UTF-8 编码Robert Griesemer :曾协助制作Java
转载 2024-01-13 08:35:05
57阅读
国全译原文(英文)链接:http://tmrts.com/go-patterns一、设计模式介绍设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。 二、golang设计模式 1. 
  • 1
  • 2
  • 3
  • 4
  • 5