Go语言中文网 为您找到相关结果 2475

Ultraedit中编辑go语言源代码

本文介绍如何使Ultraedit(以下简称UE)也支持go语言的语法高亮。 感谢朋友推荐了解一下go,抽空翻了翻,有些特性还蛮有意思的。 开始接触一些短小的代码,用UE随便翻翻看看还能忍,大段代码没有语法高亮实在坑。 步骤 1)下载go语言在UE里的wordfile(就是语法高亮支持文件)http://www.ultraedit.com/downloads/extras/wordfiles.html 2)在UE界面中定位当前存放各种语法高亮文件的wordfiles目录 3)将下载的文件go.uew放到UE安装目录下的wordfiles目录 4)重启一下UE,后缀为.go的文件打开就有高亮了,棒棒哒! $(function () { $('pre.prettyprint code').each...阅读全文

博文 2016-09-04 14:00:00 solomonlangrui

nsqjs客户端的部署

因为公司在业务中需要用到消息队列产品,我选用了基于golang开源的nsq产品,记录下我遇到的那些部署中的坑。首先安装nsq,这个没什么好说的,我是直接在官网下载bin文件,直接部署的,环境是centOS 6.7,安装在/opt/nsq-0.3.7.linux-amd64.go1.6目录下;其次是安装nodejs,我安装的是v6.1.0版本,这步也没什么好讲;然后安装nsqjs这个遇到了些坑,这里先记录下1、要看下gcc的版本; $ gcc -v使用内建 specs。 目标:x86_64-redhat-linux 配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bu...阅读全文

博文 2017-02-09 08:21:08 阿修罗王

go语言原生http库分析 (2)

这里我们分析默认的Handler–DefaultServeMux 在所有介绍之前,我们先给出两个类: type ServeMux struct { mu sync.RWMutex m map[string]muxEntry hosts bool // whether any patterns contain hostnames } type muxEntry struct { explicit bool h Handler pattern string } ServeMux实现了Handler借口的ServeHTTP函数;我们知道GO语言中,实现了接口的所有函数,则实现该接口 // ServeHTTP dispatches the request to the handler whose /...阅读全文

博文 2016-08-22 20:00:50 idwtwt

go语言方法Value Receiver, Pointer Receiver各种不同情况的实验笔记

注意: 此文章只是我的个人笔记,如有谬误,错误, 请一定指出! for range 问题 http://stackoverflow.com/questions/30577212/go-for-range-slice-and-goroutine-method-invocation-the-logic-behind package main import ( "fmt" "time" ) type field struct { name string } func (p *field) print() { fmt.Printf("print: p: %p, v: %s\n", p, p.name) } func main() { data := []field{ {"one"},{"two"},...阅读全文

博文 2016-09-03 16:00:08 htyu_0203_39

go web服务(2)

练习:HTTP 处理 实现下面的类型,并在其上定义 ServeHTTP 方法。在 web 服务器中注册它们来处理指定的路径。 type String string type Struct struct { Greeting string Punct string Who string } 例如,可以使用如下方式注册处理方法: http.Handle("/string", String("I'm a frayed knot.")) http.Handle("/struct", &Struct{"Hello", ":", "Gophers!"}) package main import ( "fmt" "log" "net/http" ) type String string type Stru...阅读全文

博文 2016-08-30 01:00:03 chenxun2009

Golang在Mac OS上的环境配置

Golang是Google开发的一种编译型,平行化,具有垃圾回收功能的编译语言,还和C一样有指针。Golang是天生的网络编程语言,学习使用Golang先从环境配置开始。环境要求: Homerbrew 安装参考:http://brew.sh/ 安装Golang Golang可以通过源代码自己编译安装https://golang.org/project/,为了管理和升级建议使用Homerbrew安装。使用命令行直接安装Golang: brew install go ==> Downloading https://homebrew.bintray.com/bottles/go-1.7.el_capitan.bottle.tar.gz ###############################...阅读全文

博文 2017-02-09 14:14:35 姜家志

Go-Servers

tcp Go简化了传统的socket处理步骤: - 服务器端的流程:Listen->Accept(->Decode->Close) - 客户端的流程:Dial->Encode->Close package main import ( "fmt" "encoding/gob" "net" "time" ) func server() { // listen on a port listen, err := net.Listen("tcp", ":9999") if err != nil { fmt.Println(err) return } for { // accept a connection connection, err := listen.Accept() if err != nil...阅读全文

博文 2016-09-06 04:00:02 u013344915

go学习

对于go的学习,需要注意的地方。 1、特别注意,go中可以使用go env命令查看我们可以在环境变量中设置的变量。 2、一般的输出使用内建函数print或者println就可以了,fmt.printXXX函数有更多的作用,比如格式化输出 3、 4、系统输出数组喜欢用[]并使用空格作为元素分隔,所以不要以为[]和空格是数据本来就又的,这点需要注意! 5、java以文件学习,因为java中国一个文件对应一个类,而go以模块学习,因为go中都是直接调用模块的函数,而模块的函数都分布在模块下的文件里面。 6、代码块中的:=短式声明在代码块外不起作用,另外,多使用go tool vet -shadow your_fil.go检查隐藏变量。 7、GOBIN环境变量可以让go install的exe文件放...阅读全文

博文 2016-08-29 21:00:04 hangeqq685042

Ubuntu 配置 Go 语言开发环境(Sublime Text+GoSublime)

本文针对的 Go 语言版本为 1.3,之前也有相关文章讲解如何在 Ubuntu 下配置Go语言的开发环境,但时过境迁,一些方法已经不相同或者不必要。虽讲的是 Ubuntu 下安装配置过程,但 Windows 系统不仅下载更方便,配置环境部分大同小异,其中 64 位系统的 GCC 编译器可到 http://tdm-gcc.tdragon.net/ 下载。第一步:安装Go语言相关工具请在终端输入以下指令(如果发现下载速度一般,建议每个分开安装,否则一个安装失败将导致未安装的全部失败):sudo apt-get install bison ed gawk gcc libc6-dev make等待全部安装完成以后,就可以进入下一步的操作第二步:安装 Mercurial(如果你不想安装,可直接跳到第三...阅读全文

博文 2017-02-10 11:31:02 1160636144

golang学习笔记

与c语法不同之处: 1. 参数列表中各个参数类型相同时可以只写出最后一个,如:add(x, y int) int { return x +y } 2. 类型在参数名(变量/函数)后面 3. 函数的左大括号要跟函数名同一行,否则编译不过 4. 函数定义要先写关键字func在函数开头(函数外的每个语句都要以func、var等等关键字开头) 5. 在包或者函数级别声明变量时要用var语句 6. 函数支持多值返回,如:func swap(x, y string) (string, string) { return y,x } 7. 函数支持命名返回值,如func split(x int) (x, y int) { ... return} 8. 初始化使用表达式时可以不用写类型,由初始值推导出类型 9...阅读全文

博文 2016-09-08 07:00:13 qq_32746725

go学习

对于go的学习,需要注意的地方。 1、特别注意,go中可以使用go env命令查看我们可以在环境变量中设置的变量。 2、一般的输出使用内建函数print或者println就可以了,fmt.printXXX函数有更多的作用,比如格式化输出 3、 4、系统输出数组喜欢用[]并使用空格作为元素分隔,所以不要以为[]和空格是数据本来就又的,这点需要注意! 5、java以文件学习,因为java中国一个文件对应一个类,而go以模块学习,因为go中都是直接调用模块的函数,而模块的函数都分布在模块下的文件里面。 6、代码块中的:=短式声明在代码块外不起作用,另外,多使用go tool vet -shadow your_fil.go检查隐藏变量。 7、GOBIN环境变量可以让go install的exe文件放...阅读全文

博文 2016-08-29 20:00:02 hangeqq685042

go again

http://www.jiaoyou8.com/friends_diary/Pariscath/2016_09_15/view_0024230180_of_2016_0915.html http://www.jiaoyou8.com/friends_diary/Pariscath/2016_09_15/view_0024230183_of_2016_0915.html http://www.jiaoyou8.com/friends_diary/Pariscath/2016_09_15/view_0024230186_of_2016_0915.html http://www.jiaoyou8.com/friends_diary/Pariscath/2016_09_15/view_0024230...阅读全文

博文 2016-09-14 18:00:02 abc12hjc

Go语言gdb调试踩坑

整个是一个docker环境docker版本: 1.12.1,镜像是我自己做的基于ubuntu:14.04.05.容器操作系统版本: Ubuntu 14.04.5 LTSgo版本: 1.6.3在gdb中执行run命令出错! 错误输出:warning:Error disabling address space randomization: Operation not permitted环境:docker 解决办法: warning:Error disabling address space randomization: Operation not permitted 结论:When running within a dockercontainer, I got this error until ...阅读全文

博文 2017-02-10 11:29:46 EDELWEISS_21g

Raspberry Pi with Go lang

// This program achieves LED blink on Raspberry Pi with Go lang. // This is implemented with hard-coding and uses only main function. package main import ( "fmt" "os" "time" ) func main() { // Initialize GPIO25 fmt.Println("Initialize GPIO25") fd, err := os.OpenFile("/sys/class/gpio/export", os.O_WRONLY|os.O_SYNC, 0666) if err != nil { fmt.Println(...阅读全文

博文 2017-02-09 08:11:14 载昊君

Go 代码审查建议

注:该文的原文来自于 go-wiki 为 Go Code Review Comments Go 代码审查建议 该页收集了 Go 代码审查时候的常见意见,以至于一个详细说明能被快速参考。这是一个常见的错误清单,而不是一个风格指南。 你可以看 effective go 作为补充。 请在编辑这个页面前先讨论这个变更,就算是一个很小的变更,许多人都有自己的想法,这里不是战场。 gofmt 运行 gofmt 来自动化的解决你代码的主要的机械的风格问题,几乎所有的不正规的 go 代码都使用 gofmt。该文档的其余部分涉及非机械式的风格点。 另外一个替代方案是使用 goimports,它是 gofmt 的父集,额外的新增(和移除)了 import 行。 注释句子 查看 http://golang.org...阅读全文

博文 2017-02-09 13:41:10 yexiaobai

Golang、Php、Python、Java基于Thrift0.9.1实现跨语言调用

目录 目录 什么是Thrift 1 Thrift内部框架一瞥 2 支持的数据传输格式数据传输方式和服务模型 3 Thrift IDL Thrift的官方网站在哪里 在哪里下载需要哪些组件的支持 如何安装 1 安装依赖插件 2 安装最新版PHP5 3 下载thirft091版本 4 编译安装 GolangJavaPythonPHP之间通过Thrift实现跨语言调用 1 Golang 客户端和服务端的实现及交互 2 python 客户端的实现与golang 服务端的交互 3 php 客户端的实现与golang 服务端的交互 4 java 客户端的实现与golang 服务端的交互 扩展阅读 什么是Thrift 0.1 Thrift内部框架一瞥 Thrift是一种可伸缩的跨语言服务的发展软件框架。它...阅读全文

博文 2016-09-08 09:00:15 狮子

介绍 GDB 调试 Go

注:本文作者是 YANN,原文是 Introduction to Go Debugging with GDB 在过去的 4 年中,我花了我绝大部分的时间用来写,读以及调试 Python 或 JavaScript 代码。在学习 Go 的过程中,像穿着一双有小石子的鞋子在美丽的山中远行。很多事情给我留下了深刻的印象,但是使用 println 调试我的代码在过去走的太远了。在 Python 中,当代码在运行的时候,我们使用 pdb/ipdb 调试它,JavaScript 提供了类似的工具。在这些年中,这个模式已经变成了我工作流中非常重要的一部分了。 今天,我认识到 Go 已经内建支持 Gnu debugger (aka GDB)。 为了这篇文章,我们使用以下这个简单的程序: package mai...阅读全文

博文 2017-02-09 13:41:52 yexiaobai

Golang学习笔记(1)---go程序一般结构

Go程序是通过 package来组织的(与python的库类似)只有package名称为main的包可以包涵main函数(同时main函数也是一个程序的入口)一个可执行程序有且仅有一个main包通过import关键字来引入其他非main包通过const关键字来进行常量的定义通过在函数体外部使用var关键字来进行全局变量的声明与赋值通过type关键字来进行结构(struct)或接口(interface)的声明----一般(自定义)类型通过func关键字来进行函数的声明一般格式为:package main //当前的包名,只有包名为main,才可以生成可执行文件 import "fmt" //引入一个包 import ( "fmt" "os" ) //这里用小括号,可以一次引入多个包,当然也可以...阅读全文

博文 2017-02-09 18:24:06 beyondlee2011

go学习

对于go的学习,需要注意的地方。 1、特别注意,go中可以使用go env命令查看我们可以在环境变量中设置的变量。 2、一般的输出使用内建函数print或者println就可以了,fmt.printXXX函数有更多的作用,比如格式化输出 3、 4、系统输出数组喜欢用[]并使用空格作为元素分隔,所以不要以为[]和空格是数据本来就又的,这点需要注意! 5、java以文件学习,因为java中国一个文件对应一个类,而go以模块学习,因为go中都是直接调用模块的函数,而模块的函数都分布在模块下的文件里面。 6、代码块中的:=短式声明在代码块外不起作用,另外,多使用go tool vet -shadow your_fil.go检查隐藏变量。 7、GOBIN环境变量可以让go install的exe文件放...阅读全文

博文 2016-08-30 00:00:01 hangeqq685042

【Go语言】【2】Sublime配置GO开发环境

一、下载Sublime Text3读者可以在官网http://www.sublimetext.com/3下载【备注】:由于我用的操作系统是win8 64位,所以选择Windows 64 bit链接下载二、注册Sublime Text31、安装完之后打开Sublime Text会发现软件没有注册,其实不注册关系也不大,只是在后面使用时会弹框影响易用性2、打开Sublime Text,选择“Help > Enter License”3、输入注册码(注意把BEGIN和END所在行也复制过去),单击Use License----- BEGIN LICENSE -----K-20Single User LicenseEA7E-9401293A099EC1 C0B5C7C5 33EBF0CF BE82F...阅读全文

博文 2017-02-09 15:57:43 qingkechina

GO 开发者对 GO 初学者的建议

文 注:原文地址为 Advise from Go developers to Go programming newbies 以促进 India 的 go 编程作为 GopherConIndia 承诺的一部分。我们采访了 40 位 Gophers(一个 Gopher 代表一个 GO 项目或是任何地方的 GO 程序员),得到了他们关于 GO 的意见。从 2014 年的八月到十一月,我们将每个星期发表两篇采访稿。如果你正好刚刚开始 go 编程,他们对于我们一些问题的答案可能会对你有非常有用。看看这些。应该做: 通读 the Go standard library 和 Effective Go,为了学习 GO 的规范,Effective Go 是被高度推荐的,尤其是如果你有其他语言的背景。 在 Go...阅读全文

博文 2017-03-05 19:45:11 紫若丹枫

go学习

对于go的学习,需要注意的地方。 1、特别注意,go中可以使用go env命令查看我们可以在环境变量中设置的变量。 2、一般的输出使用内建函数print或者println就可以了,fmt.printXXX函数有更多的作用,比如格式化输出 3、 4、系统输出数组喜欢用[]并使用空格作为元素分隔,所以不要以为[]和空格是数据本来就又的,这点需要注意! 5、java以文件学习,因为java中国一个文件对应一个类,而go以模块学习,因为go中都是直接调用模块的函数,而模块的函数都分布在模块下的文件里面。 6、代码块中的:=短式声明在代码块外不起作用,另外,多使用go tool vet -shadow your_fil.go检查隐藏变量。 7、GOBIN环境变量可以让go install的exe文件放...阅读全文

博文 2016-09-02 11:00:07 hangeqq685042

golang学习笔记

与c语法不同之处: 1. 参数列表中各个参数类型相同时可以只写出最后一个,如:add(x, y int) int { return x +y } 2. 类型在参数名(变量/函数)后面 3. 函数的左大括号要跟函数名同一行,否则编译不过 4. 函数定义要先写关键字func在函数开头(函数外的每个语句都要以func、var等等关键字开头) 5. 在包或者函数级别声明变量时要用var语句 6. 函数支持多值返回,如:func swap(x, y string) (string, string) { return y,x } 7. 函数支持命名返回值,如func split(x int) (x, y int) { ... return} 8. 初始化使用表达式时可以不用写类型,由初始值推导出类型 9...阅读全文

博文 2016-09-08 08:01:07 qq_32746725

Debugging performance issues in Go programs

Let's assume you have a Go program and want to improve its performance. There are several tools available that can help with this task. These tools can help you to identify various types of hotspots (CPU, IO, memory), hotspots are the places that you need to concentrate on in order to significantly improve performance. However, another outcome is p...阅读全文

博文 2016-09-02 15:00:04 secretx

golang学习笔记

与c语法不同之处: 1. 参数列表中各个参数类型相同时可以只写出最后一个,如:add(x, y int) int { return x +y } 2. 类型在参数名(变量/函数)后面 3. 函数的左大括号要跟函数名同一行,否则编译不过 4. 函数定义要先写关键字func在函数开头(函数外的每个语句都要以func、var等等关键字开头) 5. 在包或者函数级别声明变量时要用var语句 6. 函数支持多值返回,如:func swap(x, y string) (string, string) { return y,x } 7. 函数支持命名返回值,如func split(x int) (x, y int) { ... return} 8. 初始化使用表达式时可以不用写类型,由初始值推导出类型 9...阅读全文

博文 2016-09-08 09:00:10 qq_32746725