Go语言的一点点东西

很久没更新了,主要原因还是自己比较习惯在本地写笔记,不太习惯上传(绝对不是因为懒得排版!),最近也要加快找暑期实习的进度啦,所以更新继续随缘,有空了会放一些自己的笔记上来,大家随缘看哈

基本特点:

  • go既保证了静态编译语言的安全和性能,又达到了动态语言的开发与维护的效率
  • 从C中继承了很多的理念,包括表达式语法,控制结构,基础数据类型,调用参数传值/指针等;
  • 引入了包的概念,用于组织程序结构,go语言的一个文件都要归属于一个包,而不能单独存在;
  • 引入了垃圾回收机制,避免了内存泄漏
  • 天然并发,语言层面支持并发,,可实现大并发处理(goroutine)
  • 吸收了管道通信机制,go语言特有的管道channel
  • 函数可以返回多个值
  • 新的创新:切片slice,延时执行defer等
  • go一行最多不能超过八十个字符,多出的要用逗号换到下一行
  • 面向接口编程而不是面向对象编程
  • 在go语言中,标识符用来标识及函数名、类型名、方法名等,如果标识符的首字母是大写的,那就表示该标识的内容是对外部可见的(也就是可以通过import这个包来访问这个包内标识符首字母大写的内容)

编译注意:

  • go build与go run的区别:

    go build:先编译了可执行文件,在编译过程中会将该程序依赖的库文件包含在可执行文件之中,所以可执行文件也会打了很多,我们可以将该.exe文件拷贝到没有go开发环境的机器上运行

    go run:只能在具有go开发环境的机器上运行

  • 在go中每个文件必须归属于一个包

  • go是一行行进行编译的,因此一行只能写一个语句

  • go定义的变量或者import的包如果没有使用过则不能通过编译

  • tab,实现缩进默认向后面移动,shift+tab整体向左移动

  • gofmt -w test.go 自动缩进

go项目架构:

  • bin:存储所编译生成的二进制文件。
  • pkg:存储预编译的目标文件,以加快程序的后续编译速度。
  • src:存储所有.go文件或源代码。在编写 Go 应用程序,程序包和库时,一般会以$GOPATH/src/github.com/foo/bar的路径进行存放。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值