zoukankan      html  css  js  c++  java
  • Go语言学习笔记(一)

    一、基础知识

    1、 package关键字

    • package表示当前代码所属的包,是一种组织结构,其它package通过包名调用这个包下内容
    • package是必须的,每个文件的package必须存在有效代码第一行
    • package main是程序入口,这个包中可以编写主函数

    2、import关键字

    • import表示导入包,引用其它包的内容
    • import “fmt” 表示引用fmt包
      • fmt是GO语言中自带的包,实现输入输出的功能
    • import必须存在于package关键字下面,函数或变量声明的上面
    • import导入包时包名两侧必须有对双引号
    • GO语言要求导入包就必须使用,否则出现编译错误

    3、主函数

    • func main称为主函数,是整个程序的入口,最先执行主函数的代码
    • main()后面的{必须和func在同行
    • fmt.println()后面不需要有分号,但是写分号也可以正常运行
      • 如果一行就一个语句习惯上市不写分号的
      • 如果一行有多个语句,每个语句后面需要添加分号(不推荐一行写多个分号)

    二、GO工具

    1、解压版GO语言安装包中自带工具

    • 在%GOROOT%/bin中有三个工具
      • go.exe编译、运行、构建等都可以使用这个命令
      • godoc.exe查看包或函数的源码
      • gofmt.exe格式化文件

    2、go.exe参数列表

    3、常用参数解释

    • go version 查看GO语言版本
    • go env 查看go语言详细环境
    • go list 查看GO语言文件目录
    • go build 把源码文件构建成系统可执行文件
    • go clean 清空生成的可执行文件
    • go vet 静态解析文件,检查是否有语法错误
    • go get 从远程下载第三方GO语言库(Github)
    • go bug 提交bug
    • go test 测试
    • go run 运行文件

    三、godoc命令

    1、godoc命令介绍

    1.13版本后安装包bin目录下去掉了godoc命令

    • 可以使用godoc [包] [函数名]查看包或函数的详细源码
    • 源码在学习中非常重要,经常查看源码方便理解GO的原理

    2、godoc使用

    • 查看包的源码

    四、gofmt命令

    1、gofmt工具介绍

    • 规范的代码方便自己的阅读也方便别人的阅读,编写规范代码是每个程序员的必修课
    • gofmt工具可以帮助程序员把代码进行格式化,按照规范进行格式化
    • 使用gofmt前提是文件编译通过

    2、不规范代码示例

    • 查看下面代码中不规范的地方有几处

      package main
      import “fmt”
      func main() {
      fmt.Println("hello world");
      }
      

    3、使用gofmt的步骤

    • 在命令行输入gofmt 文件名,就可以对文件进行格式化,格式化后输出

      package main
      
      import "fmt"
      
      func main(){
      	fmt.Println("hello world")
      }
      
    • 通过运行gofmt后发现规范的代码和不规范代码的几处区别

      • package关键字和import关键字和func main之间有空行
      • main和括号之间没有空格
      • main后面()没有空格

    五、开发工具

    1.为什么使用开发工具

    • 不同的公司的开发工具可能不同,但是每个开发工具都满足以下几点:
      • 功能强大
      • 提升开发效率
      • 软件使用不是特别复杂
      • 针对公司项目,这个工具比较适合
    • 常用的开发工具有GoLand、ATOM、VsCode

    2、GoLand简介

    • Goland由JetBrains公司推出的专门针对GO语言的开发工具
      • 代码提示
      • 快速编译
      • 一建构建
  • 相关阅读:
    实现多项式相加或相减
    Node.js对28181的管理
    mssql版本对应的版本号
    Asp.net移除Server, XPoweredBy, 和XAspNetVersion头
    开源的图表控制,winform
    .NET 4.0里异常处理的新机制
    asp.net windows 域账号登录
    SpringCloud2.0 Zuul 网关路由 基础教程(十)
    SpringCloud2.0 Hystrix Dashboard 断路器指标看板 基础教程(八)
    SpringCloud2.0 Turbine 断路器集群监控 基础教程(九)
  • 原文地址:https://www.cnblogs.com/wenha/p/12291725.html
Copyright © 2011-2022 走看看