#go语言

Go语言入门 不错

部落图鉴之Go:爹好还这么努力?安装下载源码编译安装下载相应平台的安装包安装 下载地址:https://golang.org/dl/Linux上的apt-get,yum,Mac上的homebrew 安装安装完成后命令行输入go,如果显示帮助信息则安装成功GOPATHGOPATH:用来存放用户的Go源...
代码星球 ·2020-10-02

Go语言 异常panic和恢复recover用法

背景:Go语言追求简洁优雅,所以,Go语言不支持传统的try…catch…finally这种异常,因为Go语言的设计者们认为,将异常与控制结构混在一起会很容易使得代码变得混乱。因为开发者很容易滥用异常,甚至一个小小的错误都抛出一个异常。在Go语言中,使用多值返回来返回错误。不要用异常代替错误...

go语言的defer语句

go语言defer语句的用法defer后面必须是函数调用语句,不能是其他语句,否则编译器会出错。packagemainimport"log"funcfoo(nint)int{defern++//deferlog.Println("n=",n)returnn}funcmain(){variint=100foo(i)}这个...
代码星球 ·2020-10-02

深度解密Go语言之 pprof

目录什么是pprofpprof的作用pprof如何使用runtime/pprofnet/http/pprofpprof进阶RussCox实战查找内存泄露总结参考资料相信很多人都听过“雷神3”关于性能优化的故事。在一个3D游戏引擎的源码里,JohnCarmack将 1/sqrt(x)&n...

映客直播软开校招岗(go语言)

问题:笔试:比较简单,有一道题比较深刻:内存1G,需要计算1G的数据排序,哪种排序方法效率最低,当时选的是冒泡,因为涉及到频繁的数据交换,其实应该是归并,因为归并不是原地排序,多占用的内存空间,会与磁盘进行频繁的页交换,造成卡顿。面试:实习的感受学校的经历手写二分法手写图手写图的广度优先算法手写图的深度优先算法总结:校...

Go语言并发编程总结

Golang:不要通过共享内存来通信,而应该通过通信来共享内存。这句风靡在Go社区的话,说的就是goroutine中的channel.......他在go并发编程中充当着类型安全的管道作用。1、通过golang中的goroutine与sync.Mutex进行并发同步import(   &q...

Mac下安装与配置Go语言开发环境

 安装gobrewinstallgo如果提示-bash:brew:commandnotfound,可以看这:https://www.cnblogs.com/sea-stream/p/10309985.html安装完毕,一般安装好go之后,使用goenv查看一下当前环境。此时显示出来的GOROOT就是你使用br...
代码星球 ·2020-08-09

go语言 变量类型

 packagemainimport"fmt"funcmain(){//这是我们使用range去求一个slice的和。使用数组跟这个很类似。创建数组nums:=[]int{2,3,4}sum:=0for_,num:=rangenums{sum+=num}fmt.Println("sum:",sum)//在数组...
代码星球 ·2020-08-09

在Go语言项目中使用Zap日志库

在许多Go语言项目中,我们需要一个好的日志记录器能够提供下面这些功能:能够将事件记录到文件中,而不是应用程序控制台。日志切割-能够根据文件大小、时间或间隔等来切割日志文件。支持不同的日志级别。例如INFO,DEBUG,ERROR等。能够打印基本信息,如调用文件/函数名和行号,日志时间等。在介绍Uber-go的zap包之...
代码星球 ·2020-08-07

Go语言标准库flag基本使用

文章引用自 如果你只是简单的想要获取命令行参数,可以像下面的代码示例一样使用os.Args来获取命令行参数。packagemainimport("fmt""os")//os.Argsdemofuncmain(){//os.Args是一个[]stringiflen(os.Args)>0{forindex,...

Go语言之依赖管理

 最早的时候,Go所依赖的所有的第三方库都放在GOPATH这个目录下面。这就导致了同一个库只能保存一个版本的代码。如果不同的项目依赖同一个第三方的库的不同版本,应该怎么解决?Go语言从v1.5开始开始引入vendor模式,如果项目目录下有vendor目录,那么go工具链会优先使用vendor内的包进行编译、测...
代码星球 ·2020-08-07

Go语言操作mongoDB

  mongoDB是目前比较流行的一个基于分布式文件存储的数据库,它是一个介于关系数据库和非关系数据库(NoSQL)之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。mongoDB是目前比较流行的一个基于分布式文件存储的数据库,它是一个介于关系数据库和非关系数据库(NoSQL)之间的产品,...
代码星球 ·2020-08-07

Go语言操作Redis

  Redis是一个开源的内存数据库,Redis提供了多种不同类型的数据结构,很多业务场景下的问题都可以很自然地映射到这些数据结构上。除此之外,通过复制、持久化和客户端分片等特性,我们可以很方便地将Redis扩展成一个能够包含数百GB数据、每秒处理上百万次请求的系统。Redis支持诸如字符串(str...
代码星球 ·2020-08-07

Go语言标准库之http/template

   在一些前后端不分离的Web架构中,我们通常需要在后端将一些数据渲染到HTML文档中,从而实现动态的网页(网页的布局和样式大致一样,但展示的内容并不一样)效果。我们这里说的模板可以理解为事先定义好的HTML文档文件,模板渲染的作用机制可以简单理解为文本替换操作–使用相应的数...

Go语言基础之net/http

  Go语言内置的net/http包十分的优秀,提供了HTTP客户端和服务端的实现。Go语言内置的net/http包提供了HTTP客户端和服务端的实现。HTTP协议超文本传输协议(HTTP,HyperTextTransferProtocol)是互联网上应用最为广泛的一种网络传输协议,所有的WWW文件...
代码星球 ·2020-08-07
首页上一页...23456...下一页尾页