`

golang 数据结构篇

阅读更多

      近日小生迷上了golang,用了一个礼拜的闲暇时间,学习了一下golang 的数据结构及并发goroutine。贴一下学习成果,不要见笑,并上传了附件。

   1:环境搭建

        下载go sdk 并安装

        下载地址:http://dl.iteye.com/topics/download/522115e7-d053-3267-8d3e-efce8fb21ce9
        安装后,配置好环境变量和GOPATH

        我的mac 环境变量设置供参考:

 

export GO_HOME=/usr/local/go
export GO_ROOT=$GO_HOME
export GOPATH=/Users/xiaosheng/go_workspace
export PATH="$GO_HOME/bin:$PATH"

 

 

    2:贴一下工程结构,比较传统的,呵呵。      

       

       bin:存放编译后的可执行文件

       pkg:编译生成的文件

       src:   源代码

       
    3:开发环境

       1) 我用的intellij idea,贴一下idea上golang的环境配置

        安装 go-lang-pugin-org ,安装方式如下
        plugins>browse repositories>manage repositories  
        点击+ 号 输入 https://plugins.jetbrains.com/plugins/alpha/5047
        点击check,check通过后 点击ok,回到plugins search go,
        勾选go 并安装,重启

       2) 设置go sdk

         file>project struct>sdks  添加sdk

         
    4:go 工程创建
       因为GOPATH已经指定了go 工程目录,idea中直接import 那个目录就ok了

 

    5:工程目录结构
        
 
    6:上nb的代码hello world

package demos

import "fmt"

func SayHello() {
fmt.Println("hello world")
}

 

   测试用例

package main

import (
"xiaosheng/demos"
)
func main() {
demos.SayHello()
}

 
    7:学习demos
       http://dl.iteye.com/topics/download/57600994-5c4c-3ade-ab38-3892d318f6d3
 

  • 大小: 16.3 KB
  • 大小: 26.5 KB
3
1
分享到:
评论

相关推荐

    Go-Golang一些基础数据结构的封装比如treebitmap等

    本篇文章将深入探讨Go语言中的一些基础数据结构封装,包括树(Tree)和位图(Bitmap),以及它们在实际编程中的应用。 一、树数据结构 1. 树的基本概念:树是一种非线性的数据结构,由节点(Vertex)和边(Edge)...

    Go-Go中的数据结构和算法实现

    本篇将深入探讨Go语言中常见的数据结构和算法实现,帮助你提升Go开发能力。 1. 数组与切片: 数组在Go中是固定大小的,一旦定义后长度不可变。切片则是一种轻量级的数据结构,它在底层基于数组,但允许动态扩展。...

    Golang中的数据结构:Golang中每个主体数据结构的完整实现

    本篇文章将深入探讨Golang中的一些主要数据结构及其实现。 1. 数组 数组是固定大小的序列,其中每个元素具有相同的类型。在Golang中,数组的长度是其类型的一部分,这意味着数组一旦创建,长度就无法改变。定义一个...

    golang爬虫第一版代码

    本篇文章将详细解析一个基于Golang编写的初级网络爬虫的第一版代码,旨在帮助初学者理解Golang爬虫的基本结构和核心概念。 首先,我们关注的是“爬虫”这一概念。网络爬虫是一种自动浏览互联网并抓取网页内容的程序...

    epoll 使用golang实现

    `epoll`利用内核与用户空间的共享数据结构来减少上下文切换,提高了系统在高并发环境下的性能。本篇文章将详细探讨如何使用Golang语言在Linux、MacOS和Windows平台上实现`epoll`。 首先,我们来理解`epoll`的工作...

    Golang_常见面试题目解析

    题目中提到的“判断字符串中字符是否全都不同”的问题,则是考察应聘者对算法和数据结构知识的应用能力,特别是对于字符串处理和ASCII字符的理解。ASCII字符集包含了128个字符,其中包括了数字、大小写字母、标点...

    golang-crawler-project-codeSource.zip

    本篇文章将深入探讨一个基于Go语言的爬虫项目,名为"golang-crawler",通过分析其源码,来学习和理解Go语言在爬虫开发中的应用。 一、项目结构 在解压后的文件夹`golang-crawler-master`中,我们可以看到项目的...

    golang-algs-and-data-struts:在Golang中实现的算法和数据结构

    本篇文章将深入探讨在Golang中实现的数据结构和算法,旨在帮助开发者提升对Golang的理解,同时提高编程技能。 首先,我们来看看数据结构。数据结构是组织、管理、存储和检索数据的方式。在Golang中,常见的数据结构...

    golang 文件夹压缩解压代码

    本篇文章将深入探讨如何使用Golang的标准库`archive/zip`和`compress/gzip`来实现文件夹的压缩与解压功能。 首先,我们来看如何使用`archive/zip`库进行文件夹的压缩。`archive/zip`提供了对ZIP文件格式的支持,...

    leetcode算法学习笔记,Python,Golang,Java.zip

    在LeetCode的Golang解题中,你将了解到如何利用Go的切片、映射、通道等数据结构,以及goroutine和select语句进行并发编程。笔记可能还会深入讲解Go的错误处理机制,以及如何通过Go的内存模型优化算法性能。 最后,...

    golang语言爬虫 单任务版爬虫源码

    本篇将深度解析Google资深工程师分享的Golang单任务版爬虫源码,帮助读者深入理解Go语言在爬虫开发中的应用。 1. **Golang基础知识** - **Go语言特性**:Go语言是由Google设计的,其主要特点包括静态类型、垃圾...

    golang 学习笔记

    #### 四、数据结构 ##### 4.1 数组 - **定义与初始化**:使用 `[length]type` 定义数组,例如:`var arr [5]int`。 - **索引访问**:可以通过索引访问数组元素,例如:`arr[0]`。 - **遍历**:可以使用 `for` 循环...

    golang-china读书笔记

    - **切片**: 动态大小的数据结构,提供了更灵活的操作方式。 - **字典**: 键值对集合,用于存储非顺序数据。 - **结构体**: 用户自定义的数据类型,可以包含不同类型的数据成员。 - **JSON处理**: 解释了如何使用Go...

    GoLang学习笔记1

    在本篇GoLang学习笔记中,我们将探讨Go语言的基础知识,包括类型、变量、常量、自定义类型、基本类型以及复合类型。 1. 类型与变量 在Go语言中,使用`var`关键字来定义变量,并为其分配零值。例如: ```go var x ...

    Go语言学习之认识Golang

    ### Go语言学习之认识Golang #### 一、引言 Go语言,也称为Golang,是由Google设计的一种静态类型的编程语言。它以其简洁的语法、高效的并发模型以及丰富的标准库而...希望这篇文章能帮助你更好地理解并应用Go语言。

    golang&sql&nosql

    1. **文档模型**:在MongoDB中,数据以JSON格式存储,便于处理复杂的数据结构。 2. **副本集和分片**:NoSQL数据库通常支持复制和分片,以提高可用性和横向扩展性。Golang客户端会提供相应的API进行配置和管理。 3...

    golang 手写c/s 消息队列列表

    在我们的系统中,可以使用Redis的list数据结构来实现消息队列。当客户端发送消息时,将其推入list;消费者则从list中弹出消息进行处理。Redis还支持发布/订阅模式,可用于广播消息。 **登录和退出同步:** 登录同步...

    Go-层级时间轮的Golang实现

    在Go中实现层级时间轮,首先需要定义基本的数据结构。通常,这包括一个或多个时间轮节点(表示时间槽),以及一个或多个链表(用于存储待触发的事件)。每个时间轮节点都有一个关联的时间间隔,比如一级时间轮可能每...

    ORM library for golang

    本篇文章介绍了一个专门为Golang设计的ORM库——`zhgo/db`。该库支持多种数据库类型,包括MySQL、MariaDB、PostgreSQL和SQLite3等,并提供了简洁易用的API来执行常见的CRUD(创建、读取、更新、删除)操作。 #### ...

Global site tag (gtag.js) - Google Analytics