1. 课程简介
本课程的核心内容可以分为三个部分,分别是需要理解记忆的计算机底层基础,后端通用组件以及需要不断编码练习的数据结构和算法。
计算机底层基础可以包含计算机网络、操作系统、编译原理、计算机组成原理,后两者在面试中出现的频率很少,课程主要关注网络和系统两个模块,计算机网络模块主要介绍了常见的 TCP 协议、HTTP/HTTPS 协议,操作系统模块主要介绍了操作系统的进程和线程、内存管理的页面置换算法等高频题。
后端通用组件主要分为存储持久化数据的数据库,存储临时数据的缓存以及通信中间件。常用的支持持久化存储的数据库有 Oracle Database、SQLite 以及 MySQL,其中 MysQL 已经是后端必备的数据库技能。常用的缓存方案有 memcached、guava cache、Redis,其中 Redis 是目前大型应用系统首选的缓存组件,课程介绍了 Redis 的数据结构和应用问题。通信中间件则介绍了 RabbitMQ 的常见应用问题。
数据结构和算法部分最能提现候选人的编程基本功以及逻辑思考能力,课程主要介绍了最常见的算法案例,例如快排、链表、二叉树、动态规划。
课程总体上是面向工作 3 年内的初中级程序员以及准备面试后端岗位的应届生