笔记篇:与君初相识| 青训营
一 :GO的特点
- C语言是在1971年的时候,被大神Ken Thompson和Dennis Ritchie发明的,而Go语言的主导开发者之一就是Ken Thompson,所以在很多地方和C语言类似,
(比如struct、Printf、&取值符)
C/C++是直接编译为机器码,所以执行效率会更高,并且都不需要执行环境,用户的使用成本会更低,不像很多语言还需要安装所需的环境。
也因为这些原因,它们的一次编码或编译只适用于一种平台,对于不同操作系统而言,有时需要修改编码再编译,有时直接重新编译即可。
-
Java是直接编译成字节码,这种编译产物是介于原始编码和机器码的一种中间码。这样的话,Java程序就需要特定的执行环境
(JVM)
了,执行效率相比会低一些,还可能有虚拟化损失。但是这样也有一个好处就是可以编译一次,多处执行(跨平台)
。 -
Go
不同于C/C++
,对于多个平台,可能需要修改代码后再编译。也不同于Java
的一次编码,编译成中间码运行在多个平台的虚拟机上。Go
只需要一次编码,就能轻松在多个平台编译成机器码运行。
二:在vs code配置go开发环境时疑惑
cmd 和powershell区别
- Windows 命令提示符(即 cmd)是 Windows 系统的一种命令行操作工具,用户可以通过输入命令来完成各种各样的系统或程序操作。
- PowerShell是微软公司开发的任务自动化和配置管理框架。可以理解为 cmd 的升级版,或者说是其超集,类似 Linux 系统的 bash 一样,都是基于壳程序 shell
- 连续命令执行,Cmd下用 &,Powershell用分号。
环境变量
- 指明操目录在哪里(地址),或者改变应用状态(on或者数字等等)。
- 当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还会到环境变量中指定的路径去找。用户通过设置环境变量来更好的运行进程。
- 环境变量可以分为
用户变量
和系统变量
,系统变量只有管理员用户可以修改。 %变量名%
来调用命令,代替该环境变量所指示的地址。
Go Module
- 问题:
go.mod file not found in current directory or any parent directory; see 'go help modules' (exit status 1)
在当前目录或任何父目录中均未找到go.mod文件。 - 每个模块都有自己的范围,并且功能不会跨模块工作。
- 将一个目录进行初始化后,该目录下生成
一个
go.mod文件。然后在该目录下创建一个子文件夹并新建.go文件), - 多模块并非默认开启的,因为目前依旧不够完善,需要手动开启。可以通过
vs code
中扩展Go的settings.json配置设置进行尝试.
Repositories和Project
Repositories
直接翻译过来即是资料库的意思,它可以保存代码工程、项目代码、图片、文本等,平时做的笔记也是可以放入的。Projects
(project boards)指的是管理项目板的意思,用来进行项目管理,可以添加任务,制作工作流程等操作。进程计划。