建议学golang或python吧, 这了整理了一份超全golang面试题合集+golang学习指南+golang知识图谱+成长路线 一份涵盖大部分golang程序员所需要掌握的核心知识。如果是小白,可以考虑通过里面的视频教程学习。
后续文章和内容会不断更新到 中,欢迎关注。
目录(善用Ctrl+F)
- 基础入门
- 新手
- 数据类型
- map不初始化使用会怎么样
- map不初始化长度和初始化长度的区别
- map承载多大,大了怎么办
- map的iterator是否安全?能不能一边delete一边遍历?
- 字符串不能改,那转成数组能改吗,怎么改
- 怎么判断一个数组是否已经排序
- 普通map如何不用锁解决协程安全问题
- array和slice的区别
- 零切片、空切片、nil切片是什么
- slice深拷贝和浅拷贝
- map触发扩容的时机,满足什么条件时扩容?
- map扩容策略是什么
- 自定义类型切片转字节切片和字节切片转回自动以类型切片
- make和new什么区别
- slice ,map,chanel创建的时候的几个参数什么含义
- 线程安全的map怎么实现
- 流程控制
- 进阶
- 包管理
- 优化
- 内存碎片化问题
- chan相关的goroutine泄露的问题
- string相关的goroutine泄露的问题
- sync.Pool的适用场景
- go1.13sync.Pool对比go1.12版本优化点
- 并发编程
- sync.map 的优缺点和使用场景
- sync.Map的优化点
- 包
var _ io.Writer = (*myWriter)(nil)
- 源码阅读
- net/http
- main函数背后的启动过程
- 汇编
- 实践常用工具