你会学到什么?
课程简介
说实话,写这本小册主要是为了“让看不顺眼的事情少一些”。国内的互联网已经卷到不能再卷的地步了,但是我们是以数量取胜的,身边基础知识很差的一抓一大把。这让“看见大括号没对齐就想去对齐”的我更加看不顺眼(手动狗头)。
大部分人都想夯实基础,但是苦于没时间,或者时间不够,毕竟不能像大学时候那样每周 4 个学时、18 周共 72 学时去学一门专业课。其实计算机专业课核心内容并不多,往往都是只有中间的 3、4、5 章真正有用,本小册就本着这个目的来只提炼核心内容,让你在地铁上或者马桶上利用碎片时间就能学到有用的基础知识。
有小伙伴可能会问,看过了还是记不住怎么办?那就是没理解,不用纠结。为了解决这个心理问题,本小册就只讲基础知识,化记忆性知识为理解性知识
,并在原有课程的基础上做了一些衍生,不一定深入但一定浅出,让你有自己的感悟,记得更牢。
一个 API 或者一个技巧改变不了一个人,所以我们的重点不是讲 API,不是讲奇技淫巧,而是原理和设计思想,以及做事方法和习惯。
本小册主要分为 四大模块
,采用自底向上
的方式展开。
- 模块一:化繁为简讲解计算机基础知识。比如我们代码中很少使用的位运算,以及我们写得最多的条件语句、循环语句等,它们的底层是怎么运行的呢?在这里会带你理解计算机的执行逻辑,让你彻底了解计算机,做到对每一句代码的执行都心中有数。
- 模块二:深入浅出讲解计算机专业知识。在这里会讲解:数据结构、计算机网络、组成原理和操作系统等知识。本小册在这里深入浅出地“变记忆性知识为理解性知识”,让你不仅知道怎么用,还知道为什么,真正做到心中有数。
- 模块三:讲解设计思想并搭建一个直播间框架。这一部分会从
实战
出发,从设计模式到设计思想,从软件工程到项目开发,从需求分析到详细设计,手把手教你搭建一个直播间框架。 - 模块四:讲解一些通用的做事和学习技能。往往能改变我们的并不是某个技术,而是某个习惯和观点,授人以鱼不如授人以渔,这部分会总揽前面所有章节,提炼出做事方式和学习方式,站在更高的维度来帮助你提升自己。
整体设计如下:
课程目录
写在前面的话
二进制:计算机程序的“细胞”
位运算:程序高速运行的基石
代码的基元:初识数据类型
代码优化:挑选合适的数据类型
计算机的思维:代码的工作流程
替朋友着想:优化我们的程序流
不同的思维:面向过程和面向对象
换位思考:程序该面向谁?
数据结构之基:从根儿上了解数据结构的特性
数据结构进阶:实现原理和设计思路
数据结构实践:选择合适的数据结构
系统的基元:进程和线程
贪心的后果:并发及解决方案
操作系统精粹:调度算法及使用
森严的等级制度:层级和协议
苦累的搬运工:TCP 和 UDP 的传输过程
网络的实践:优化我们的网络请求
知己知彼:计算机的工作流程
缓存策略:让程序更快一步
架构之基:从根儿上了解设计原则
架构进阶:灵活运用设计模式
架构升华:脱离设计模式
硬基本功:对象的关系与 UML 图
软基本功:分析需求并进行大纲设计
需求分析:直播间的需求评审
概要设计-设计我们的项目架构
详细设计-开始实现业务逻辑
复盘-代码的Review与评估
Git 基础:工作流程和原理
Git 实践:常用的 GUI 工具和命令
做事的核心:可靠
沟通的核心:高效
学习的诀窍:总结
写在后面的话
讲师介绍
奔波儿灞取经,安卓高级开发工程师。曾就职于 IBM、Delta 等海外公司。目前在一家海外互联网公司任职,主要负责海外社交应用的开发和维护。