Hello,各位小伙伴,在接着之前发表的Go语言系列教程之投石问路之后,我们大致了解了一下Go语言的发展史和Go语言的优势,另外我也带着小伙伴进行了Go语言环境的安装和常用命令的介绍。接下来我们就正式的开启了我们的Go语言探索教程之路了,请各位小伙伴系好安全带,我们准备发车了~,滴滴“hello world”大法

小伙伴都应该知道,在入门语言的基础就是运行hello word程序,就好比我们要修炼成上乘的武功,必先蹲起马步,练好基础,学习也不例外,编写程序也是万变不离其宗。

好了,废话不多说,对于Go语言的hello word 是非常的简单。因为它的语法特色就是非常明了简单,如图所示:

运行结果如图所示:

我们的运行结果出来也看得出来,Go语言的语法确实非常简单明了,但是一个简单的hello go 也存在很多容易让小伙伴们忽略的点,且听我给大家细细道来。

其实对应每个Go语言的源文件都对应了一个package 包,这个包名其实和文件名没有什么关系,实际开发中我们也习惯将包名和文件名设置一致,是为了引用和好辨认。

包是Go语言里面最基本的分发单位,也是后续所讲的项目工程管理中的依赖关系体现。其次呢,我们在代码中也可以看到有一个import 的标记,这个代表的是引入我们编写程序的依赖包,在本示例中我们需要打印“hello go”,所以引入了Go语言中的内置包fmt 。

在Go语言中要生成可执行的程序,就需要我们建立一个名字为main的包,并且在这个包中需要包含一个叫做main() 的函数,这个方法是属于程序执行的入口,也叫做起点。

请各位小伙伴注意一点的是Go语言的main函数是没有任何入参和返回值的。切记,切记。

当然在介绍完我们的hello word大法之后呢,我们也可以知道一点的是,在Go语言中函数的组成格式是:

    Func(入参)(返回值){}

与以往的编程语言不同的是(类比于java),Go语言的返回参数不仅仅是一个,可以是二个甚至多个,举个大栗子:

是不是颠覆了你之前的认知呢?哈哈哈哈,我第一次学习的时候也惊讶了,当然细心的小伙伴是不是也发现了我们在入参和出参的时候也略微的不一样呢。

请各位同学注意一下,我们以后再go语言的开发中,统一都会将变量定义在前,变量类型定义在后,当然如果是多个变量类型一致,我们可以在最后简写为一个类型,是不是很方便呢?

“注 释”大 法

在Go语言中的注释分为两种注释方式,第一种属于行注释,第二种属于代码块注释,其实有编程基础的小伙伴可以类比学习。

像在java 代码中 我们也有行注释和代码块注释,它们表现的手法分别是 // 和/** XXX*/,熟知Python语法的小伙伴知道对于Python的行注释和代码块注释是 # 和```XXX``` 。

我们go语言的行注释和代码块的注释和java代码差不多(严重怀疑Go语言的开发者以前有借鉴过java的语法特点) // 和 /XXX/ 比java的块注释少了一个*号。

所以对比记忆下来,其实Go语言的学习还是会很轻松和愉快。但是需要大家注意一点的是(当然以后我也会给大家写到)因为Go语言之所以语法简单,结构清晰是因为:

go语言会存在代码检测(怀疑go语言作者以前被无用的代码困扰过),定义了无用的代码或变量,代码编译会不通过,代码运行会直接报错,在goland中会进行友好的提示:

对于这一点其实呢我觉得很好,因为即保证了代码的严谨性又保证了代码的规范,避免被无用的代码所误导。

以上就是Go语言入门教程之初窥门径,因为考虑到知识点的缘故,希望大家每天能够抽3分钟进行学习go语言,不断提高自己。

我们今天主要讲了go语言的hello word,在Go语言程序中需要注意的点和Go语言中的注释和语法特色。下次我们go语言的分享就是关于go语言系列教程之内功修炼,主要是Go语言的常量、变量、命名规范和枚举类型的讲解。

GO语言入门教程(二)相关推荐

  1. c++ 结构体赋值_《零基础看得懂的C语言入门教程》—(十二)结构体是这么回事

    一.学习目标 了解C语言的结构体的使用方法 了解C语言结构体的结构的赋值 了解多种C语言结构体变量的赋值方法和取值方法 目录 <零基础看得懂的C语言入门教程>--(二)简单带你了解流程 & ...

  2. R语言七天入门教程二:认识变量与运算符

    R语言七天入门教程二:认识变量与运算符 一.什么是变量 1.变量 顾名思义,我们可以将变量理解为"可以改变的量",是计算机语言中能储存计算结果或能表示值的抽象概念.这里的值可以是数 ...

  3. c语言类似于 n的标识符,C语言快速入门教程(二)

    C语言快速入门教程(二) C语言的基本语法 本节学习路线图: 引言: C语言,顾名思义就是一门语言,可以类比一下英语; 你要说出一个英语的句子需要: 单词 + 语法! 将单词按照一定的语法拼凑起来就成 ...

  4. (转)tensorflow入门教程(二十六)人脸识别(上)

    https://blog.csdn.net/rookie_wei/article/details/81676177 1.概述 查看全文 http://www.taodudu.cc/news/show- ...

  5. C语言入门教程学习 C语言学习包括哪些?

    嵌入式开发有一定了解的朋友们知道是在操作系统内部开发的,对于操作系统内部来说基本上都是用C语言来进行编译的,所以说对于C语言的学习在嵌入式开发过程中是非常重要的.下面就给大家介绍一些C语言入门教程的相 ...

  6. iOS开发之c语言入门教程

    苹果作为移动互联的高端品牌,iOS操作系统也被用户公认为是最好用的移动互联网操作系统.据了解,曾一度拒绝为iOS平台对出浏览器的火狐在今年5月份的时候,他们却食言了.今天,Mozilla宣布iOS版F ...

  7. python elasticsearch 入门教程(二) ---全文搜索

    python elasticsearch 入门教程(二) ---全文搜索 截止目前的搜索相对都很简单:单个姓名,通过年龄过滤.现在尝试下稍微高级点儿的全文搜索--一项 传统数据库确实很难搞定的任务. ...

  8. c语言入门教程文库,C语言入门教程(全集)课件

    C语言入门教程(全集)课件 01123364105 Y N p AB X=0? YN P1 A A P2 a a b b Y Y N N y n A B P A A B X=0? 3 a97 3 U ...

  9. 2017年Go语言入门教程-徐培成-专题视频课程

    2017年Go语言入门教程-3763人已学习 课程介绍         Go语言入门教程,只要你懂中文都可以看的懂本套教程,为任何想学习Go语言研制的教程. 课程收益     让任何人都可以轻松掌握G ...

最新文章

  1. Attention is all your need 谷歌的超强特征提取网络——Transformer
  2. DirectX10 学习笔记2:在多文档框架中初始化DirectX 10
  3. 别再抱怨了,国内这么多优秀的Android资源你都知道吗?
  4. 字符串 mysql索引,长字符串的MySQL索引
  5. python调用pyd_Python生成pyd文件
  6. Unix编程哲学和软件设计方法
  7. jquery 数组添加不重复数据
  8. [ST2017] Lab1: Triangle type and Junit test
  9. Mysql8.0 15安装后怎么打开_mysql-8.0.15-winx64 解压版安装 图文详解
  10. CocoaPods 2017最新、最快安装和使用说明
  11. python 金融可视化_Python数据分析:金融数据可视化
  12. 重置uchome密码
  13. 最新版MySQL 8.0.22(Windows 64位)下载安装详细方法
  14. 服务器虚拟化三种架构,X86虚拟化之三种服务器虚拟化战略架构
  15. 【STM32f401学习之路-02】USART串口通信
  16. Win10桌面图标箭头去掉的方法总结
  17. 移动硬盘损坏怎么恢复?找到原因再解决
  18. BIS新增手机测试认证标准 IS16333 (Part 3)2017.6.30 印度语
  19. 图像的均值滤波、中值滤波_JAVA
  20. 脚本实现批量打开常用软件

热门文章

  1. 通俗讲解:什么是Web
  2. 银河麒麟系统,光盘追加刻录失败
  3. MQ响应码是2059该如何解决
  4. 基于金字塔的模板匹配算法(python)
  5. 计算机图形学与opengl C++版 学习笔记 第5章 纹理贴图
  6. canvas线性渐变实现:根据渐变线角度计算坐标x0,y0,x1,y1
  7. txt文件合并方法(不需要工具)
  8. 在VMware上安装macOS
  9. html里面a标签点击时去除下划线
  10. 各大android应用商店的展示权重 安卓应用商店关键词+下载量+评价+其他这几项占的权重(仅供参考)