Effective GO
最近有人推荐Effective Go,这本书算是给初学者看的,因为已经看多很多Go方面的书了,所以再看这本书,总体收获较小,文章地址:https://learnku.com/docs/effective-go/2020
讲述的知识里,有几点印象深刻一些,在这里分享出来
格式化
go fmt:https://www.jianshu.com/p/104b33439ac2
new和make区别
- new:用来分配内存的内建函数, 但与其它语言中的同名函数不同,它不会初始化内存,只会将内存置零。 也就是说,
new(T)
会为类型为T
的新项分配已置零的内存空间, 并返回它的地址,也就是一个类型为*T
- make:只用于创建切片、映射和信道,并返回类型为
T
(而非*T
)的一个已初始化 (而非置零)的值。 出现这种用差异的原因在于,这三种类型本质上为引用数据类型,它们在使用前必须初始化
- new:用来分配内存的内建函数, 但与其它语言中的同名函数不同,它不会初始化内存,只会将内存置零。 也就是说,
数组和切片的关系
切片是对数组的引用
如果切片范围没有超过数组长度,则两者可以认为是完全相同的东西
如果切片范围超过数组长度,会自动创建一个新的底层数组,取消对原数组的引用,数组和切片便分隔开了
type
- type File struct/type Integer int:这是结构体,也是类型,实现了函数便是类
- type IFile interface:这是接口,如果类中的函数包含接口中的函数,则这个类实现了该接口
资料
- https://blog.csdn.net/weixin_42266173/article/details/81749949
- https://studygolang.com/articles/27012?fr=sidebar 一篇文章理解 golang 中切片与数组的关系
- https://learnku.com/docs/effective-go/2020
最后
大家如果喜欢我的文章,可以关注我的公众号(程序员麻辣烫)
往期文章回顾:
算法
- 算法学习计划
- 蛮力法
- 分治法
- 减治法
技术
- 浅谈微服务
- TCP性能优化
- 限流实现1
- Redis实现分布式锁
- Golang源码BUG追查
- 事务原子性、一致性、持久性的实现原理
- CDN请求过程详解
- 记博客服务被压垮的历程
- 常用缓存技巧
- 如何高效对接第三方支付
- Gin框架简洁版
- InnoDB锁与事务简析
读书笔记
- 敏捷革命
- 如何锻炼自己的记忆力
- 简单的逻辑学-读后感
- 热风-读后感
- 论语-读后感
思考
- 对项目管理的一些看法
- 对产品经理的一些思考
- 关于程序员职业发展的思考
- 关于代码review的思考
- Markdown编辑器推荐-typora
Effective GO相关推荐
- Effective C++ 50条款
Effective C++ 50条款 条款 1:尽量用 const 和 inline 而不用#define--尽量用编译器而不用预处理 #define max(a,b) ((a) > (b) ? ...
- [.NET] 《Effective C#》快速笔记 - C# 中的动态编程
<Effective C#>快速笔记 - C# 中的动态编程 静态类型和动态类型各有所长,静态类型能够让编译器帮你找出更多的错误,因为编译器能够在编译时进行大部分的检查工作.C# 是一种静 ...
- Effective STL 50条有效使用STL的经验笔记
Scott Meyers大师Effective三部曲:Effective C++.More Effective C++.Effective STL,这三本书出版已很多年,后来又出版了Effective ...
- 《Effective C++》第8章 定制new和delete-读书笔记
章节回顾: <Effective C++>第1章 让自己习惯C++-读书笔记 <Effective C++>第2章 构造/析构/赋值运算(1)-读书笔记 <Effecti ...
- VirtualBox: Effective UID is not root
为什么80%的码农都做不了架构师?>>> 桌面上运行virtualbox出错: The virtual machine 'xp' has terminated unexpect ...
- Effective Java:对于全部对象都通用的方法
前言: 读这本书第1条规则的时候就感觉到这是一本非常好的书.可以把我们的Java功底提升一个档次,我还是比較推荐的.这里我主要就关于覆盖equals.hashCode和toString方法来做一个笔记 ...
- 第 3 次读 Effective Java,这 58 个技巧最值!
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源:Dong GuoChao <Effective ...
- Effective C++ 类与函数设计和申明
Effective C++ 类与函数的设计和申明 在看<Effective C++>这本书的过程中,我无数次的发出感叹,这他妈写得太好了,句句一针见血,直接说到点上.所以决定把这本书的内容 ...
- 量化网络训练--Towards Effective Low-bitwidth Convolutional Neural Networks
Towards Effective Low-bitwidth Convolutional Neural Networks CVPR2018 https://github.com/nowgood/Qua ...
- 卫星图像分割--Effective Use of Dilated Convolutions for Segmenting Small Object Instances
Effective Use of Dilated Convolutions for Segmenting Small Object Instances in Remote Sensing Imager ...
最新文章
- docker错误 /usr/bin/docker-current: No port specified: xxx:empty
- linux who命令测试,Linux中的who命令详细示例
- js操作改变原数组的解决方法
- java webapps路径_java 获取服务器端的webapps路径 | 学步园
- python解压_python解压
- 第五部分 自定义的Calendar接口示例
- 有两个程序员得了肺癌 都是30多岁的男人
- 作为一个新人,怎样学习嵌入式Linux?(转自韦东山)
- akamai反爬虫 akamai2.0 反爬 akamiv2 阿卡迈|ti|德州仪器|nike|机票预定| Maersk
- python输入数字变时间_转变大写日期为数字格式
- 虚拟化中的链接克隆技术
- 短距离无线通讯-NFC
- 看了一篇别人的年终总结,感觉对自己的启发挺大的
- JMockit简单使用(二)
- open judge 1.5 18:鸡尾酒疗法
- 使用Java将Word文档转PDF
- api.php act get api,api.php
- js仿新浪微博消息发布功能
- 多功能报警杆在高速服务区的应用
- Delphi实现shell扩展
热门文章
- IOS从零开始之_objective-c初探上
- 非常哇塞的 SpringBoot性能优化长文!
- Wordpress中wp-admim管理后台(404)无法进入,无限循环跳出解决方法
- echarts双折线图自定义tooltips样式
- Java常用工具类-根据物流单号,从快递100中获取物流详细信息,包含发货,签收等
- python utf 8 mac_Mac python 开发环境一些设置
- Android开发常用工具总结
- 软件测试技术课后习题:第1章软件测试概述-广东高等教育出版社,主编杨胜利
- 微信小程序开发之——摇一摇Demo
- java 毫秒转分钟和秒_将毫秒转换为分钟和秒的java程序