GO的基础知识扫盲注意事项

 更新时间:2022年12月19日 14:43:17   作者:astarblog  
这篇文章主要介绍了GO的基础知识注意事项,本文是GO语言小白的扫盲文,主要讲解了go语言的基本知识,GO程序目录结构,GO程序包的导入与别名运用,GO内置关键字,GO注释方法需要的朋友可以参考下

一.GO程序目录结构

在GOPATH目录下的结构

--bin(存放编译后生成的可执行文)
|----hello.exe(可执行文件)
--pkg(存放编译后生成的包文)
|-----(后面用到了在说)
--src(存放项目源)
|----hello(项目目录)
|------main.go(入口文件,下面会详解)
|----...(多个目录和上面hello的形式一样)
|-------...

二.GO程序的一般结构

在进行介绍前我先来回顾下之前的main.go文件结构

package main
import (
    "fmt"
)
func main() {
    fmt.Println("Hello World")
}

Go程序是通过package来组织的,和python类似,只有package名称为main的包可以包含main函数,一个可执行的程序有且仅有一个main包

通过import关键字来导入其他非main包

通过const关键字来定义常量

通过var关键字来进行全局变量的声明与赋值

通过type键字来进行结构(struct)或接口(interface)的声明

通过func关键字来进行函数的声明

三.GO程序包的导入与别名运用

包的导入

单独引入各种包

import "fmt"
import "io"
import "time"
import "strings"

统一引入,省去多个import关键字

import(
    "fmt"
    "io"
    "time"
    "strings"
)

如果导入的包如果没有调用,在编译的时候会报编译错误,这个是很关键的,所以在编译报错的时候可以检查一下是否有导入的包未调用

包的别名与运用

在实际工作中为了简写或者统一命名等一些特殊情况下

import(
    print "fmt"
)

上面就是将fmt替换成print,没替换前是:

fmt.Println("Hello World")

替换后是:

print.Println("Hello World")

包的别名还有一个省略调用的,非常不建意那么用,所以就不介绍了

四.可见性规格(非常重要)

在GO语言中使用大小写确定该 常量、变量、类型、接口、结构或函数 是否可以被外部包所调用

函数名首字母小写为private,表示私有,不可以被外部调用

函数名首字母大写为public,表示公有,可以被外部调用

1. 首字母小写函数例:(不可被名部调用)

func getDate(){
    return ...
}

2. 首字母大写函数例:(可被外部调用)

func GetDate(){
    return ...
}

五. GO内置关键字

常用一共25个,全部小写

break
default
func
interface
select
case
defer
go
map
struct
chan
else
goto
package
switch
const
fallthrough
if
range
type
continue
for
import
return
var

六. GO注释方法

//  : 表示单行注释
/* */   : 表示多行注释

本文主要是GO语言的基础知识扫盲文,主要讲解了GO程序目录结构,GO程序包的导入与别名运用,GO内置关键字,GO注释方法等相关知识,更多GO语言基础知识请查看下面的相关链接

相关文章

  • 使用Go语言实现发送HTTP请求并给GET添加参数

    使用Go语言实现发送HTTP请求并给GET添加参数

    在开发Web应用程序时,我们经常需要向服务器发送HTTP请求,本文将介绍一下使用Go语言发送HTTP请求,并给GET请求添加参数的方法,感兴趣的小伙伴可以了解一下
    2023-07-07
  • 从Context到go设计理念轻松上手教程

    从Context到go设计理念轻松上手教程

    这篇文章主要为大家介绍了从Context到go设计理念轻松上手教程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • golang NewRequest/gorequest实现http请求的示例代码

    golang NewRequest/gorequest实现http请求的示例代码

    本文主要介绍了golang NewRequest/gorequest实现http请求的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • 使用 go 实现多线程下载器的方法

    使用 go 实现多线程下载器的方法

    本篇文章带领大家学习使用go实现一个简单的多线程下载器,给她家详细介绍了多线程下载原理及实例代码,感兴趣的朋友跟随小编一起看看吧
    2021-10-10
  • 使用GO操作MongoDB的方法

    使用GO操作MongoDB的方法

    这篇文章主要介绍了使用GO操作MongoDB,包括安装MongoDB驱动程序连接mongodb的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • 使用golang实现在屏幕上打印进度条的操作

    使用golang实现在屏幕上打印进度条的操作

    这篇文章主要介绍了使用golang实现在屏幕上打印进度条的操作,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • 深度解密 Go 语言中的 sync.map

    深度解密 Go 语言中的 sync.map

    这篇文章主要介绍了深度解密 Go 语言中的 sync.map,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • go交叉编译sqlite报错问题解决分析

    go交叉编译sqlite报错问题解决分析

    这篇文章主要为大家介绍了go交叉编译sqlite报错问题解决分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • grpool goroutine池协程管理

    grpool goroutine池协程管理

    这篇文章主要介绍了grpool goroutine池协程管理,goroutine协程非常轻量级,这也是为什么go支持高并发,但是goroutine频繁创建销毁对GC的压力比较大,文章围绕主题展开详细的内容介绍,需要的小伙伴可以参考一下
    2022-06-06
  • Go语言实现自动填写古诗词实例代码

    Go语言实现自动填写古诗词实例代码

    这篇文章主要给大家介绍了关于Go语言实现自动填写古诗词的相关资料,这是最近在项目中遇到的一个需求,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-03-03

最新评论