go常见问题

1、至少知道go的fiber概念,调度原理,M/P/G的角色分工;

2、map的数据结构,get/put/delete过程,扩容机制;

3、slice的内存结构,扩容机制,巨型slice产生的垃圾回收问题;

4、interface底层结构,反射机制;

5、内存管理、分配是怎么进行的,垃圾回收的流程,三色回收算法;

6、go的接口跟其他语言有什么不同?好处和坏处是什么得有自己的理解;

7、panic/defer/recover这些都要知道,以及defer对return暂存区的影响需要理顺;

8、channel的数据结构、源码需要知道,需要知道怎么用channel实现线程池,select的执行顺序一类的;

9、mutex包至少知道怎么用,最好能看下源码;

10、工程化所需的基本知识,Gocenter,Go mod会用;

11、一般都会问docker是啥,基本概念,还有衍生的k8s基本原理;

12、单元测试方面的,需要知道什么是测试驱动开发。