C++后端开发学习路线

语言

  • 对象生命周期,垃圾回收
  • 标准库
  • 错误与异常处理
  • 日志分析,断点调试
  • gdb使用
  • 面向对象理解
  • 设计模式

数据结构与算法

  • 链表,队列,栈
  • 二叉树,红黑树
  • b树,b+树
  • dijkstra算法,最小生成树
  • 递归
  • 排序 归并,快排,堆排序
  • 贪心,动态规划
  • 跳表,散列表,哈希hash,布隆过滤器

数据库

  • 持久化mysql

mysql的安装与配置

sql语句建表、索引、存储过程

存储引擎(myisam/innodb)

数据库连接池

异步数据库请求

数据库集群,分库分表,读写分离

  • 缓存redis

redis编译安全、配置

redis命令使用

redis连接池/异步redis做法

redis集群,数据备份

缓存雪崩,缓存击穿

网络原理

  • ping, telnet, ifconfig
  • 网络体系模型
  • tcp/udp 三次握手,必会(答对必须,没对送命),四次挥手,滑动窗口,状态机(每个状态如何迁移)
  • udp 实时性
  • http, https, http2.0, http3.0
  • 网络安全,加密,数字签名
  • wireshark(linux), tcpdump(windows)
  • Session Cookie application
  • iperf(上线前回去测一下网络带宽)

操作系统

  • CPU, 内存, 磁盘, 外设
  • 文件操作,系统操作
  • 程序编译,运行
  • shell/vim使用
  • Linux系统性能监控参数ps/netstat/df
  • 操作系统原理相关:进程管理,用户态/内核态(用户态和内核态的交互只有通过系统调用,弄清系统调用的原理),内存管理,内存池,磁盘文件系统(虚拟文件系统,文件缓存,分布式文件系统),磁盘io

网络编程

  • socket编程,tcp/udp
  • 网络io模型,阻塞非阻塞,同步异步
  • io多路复用 select/poll/epoll(答出来很正常,答不出技术不扎实)
  • time_wait/close_wait大量
  • C10K/C1000K/C10M
  • 网络框架 libevent/libev, 协程ntyco, libco

怎么在写业务的过程中扣住知识点

分布式

  • rpc,grpc, tars, brpc, srpc 对外提供接口(rpc接口)微服务
  • 简单的rpc协议设计/框架搭建
  • 协议传输的时候,序列化/反序列化
  • 服务注册,服务发现
  • 容灾,降级熔断,流量控制
  • 高并发,高可用

云原生

  • 腾讯云/阿里云
  • docker(可以直接保存现场,解决环境一致性问题)
  • docker编排,网络
  • k8s管理

学的深不深取决于你的基础,基础不扎实,技术部深入,扣住基础

软技能

沟通、组织、协调能力,需求分析

C++岗位: 每个方向技术,游戏c/c++, 存储 IDE,没有统一的标准

全部评论

相关推荐

野猪不是猪🐗:还是太卑微了,什么叫放弃本次面试应该说经过评估,贵公司与自己不匹配,决定不再推进后续流程
点赞 评论 收藏
分享
给个offer灞:校友 是不是金die
点赞 评论 收藏
分享
评论
1
19
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务