学习路线图
制定个计划,让自己不再迷茫。
每天投点时间进去。
从找点事做,到更好的发挥有限时间的价值,是接下来要考虑的。要做的事情越来越多,可支配的时间却越来越匮乏,需要时间去思考,如何发挥时间/付出的价值。
不去考虑现在能否抽出时间做某些事情,先开始,之后自然能挤出时间,一直等有时间了,只会一直等下去。
感觉收获很多,
一是处在管理岗位,确实应该有很多管理上的能力,得加强学习,不能两眼只盯着技术栈;
二是隔一段时间去面试下,避免坐井观天,活在自己的世界里;
最后,技术更迭变迁,但底层和原理是共通的,掌握了这些,才能走的更远。
那些赚到大钱的人,没有一个是靠时间换取收入的。他们要么通过积累资产致富,要么购买他人的时间,为自己创造财富。你应该警惕,不要落入”时间换取收入”的陷井,不要只顾着为别人生产代码,而要注意积累自己的资产,以及适时开展属于自己的业务。 —转自:阮一峰
🔗收藏:
Teach Yourself Computer Science
OSSU ( Open Source Society University )
面试准备及指导:https://github.com/Snailclimb/JavaGuide
计算机公开课
一、浙江大学 Github 地址:https://github.com/QSCTech/zju-icicles
二、B 站的公开课 Github 地址:https://github.com/elder-frog/OpenCourseCatalog
三、CS自学指南(推荐了很多原版视频课,纯英文有些吃力)
Basic CS
《计算机科学概论》(finish)
✨《计算机程序的构造和解释》 SICP – Structure and Interpretation of Computer Programs
- UC Berkeley CS 61A
- Programming by poking: why MIT stopped teaching SICP
- 已完成第一轮,第二轮原版 + 视频
- 持续进行中,lisp的认识、前缀表达式的认识,虽然很费时,但收获颇多
- 前三章感觉还能看懂一些,但到第四章尤其是数据库部分,就有点看不懂了,还有些急躁,也许今年,也许明年,静下心来再看看这部分
- 到第五章,开始讲寄存器和编译,感觉看的更急躁了,更加浮于表面,习题也几乎没做,感觉需静下心了,但初略看后,感觉这一章的收获依旧很多。
- 之后再看看函数式编程相关的文章
- 编译原理也会提上日程
✨《深入理解计算机系统》 CSAPP – Computer System : A Programmer’s Perspective
- UC Berkeley CS 61C CMU-15-213/15-513
- 已完成第二轮,后续看看原版视频
- 处理器、内存、存储器、缓存、性能优化、IO、网络、汇编语言、C 语言、并发编程
- 寄存器的各种操作指令是一个挑战,第二轮前需要看看汇编语言相关的书籍(finish)
- 第二轮整体较第一轮好了不少
- 此书被各种推荐
《计算机组成原理》(完成第一轮)
- 组成原理的确如传闻,比较难
- 如其名,主要讨论计算机各 大部件的基本组成原理 ,以及各大部件互连构成整机系统的技术,是其他课程的基础
- 跟着课程虽然慢,但效果远比干看书好,先看书预习->再看课程->再完成课后题
- 后续计划结合另一版的教材回顾
《计算机组成与设计 硬件软件接口》
《操作系统导论》
- Berkeley CS 162
- 这个是最权威的书籍,有时间看一下
《操作系统概念》(恐龙书)
- 跟着视频过了一遍,后续有时间再看看教材,但还是先看 导论
《操作系统设计与实现》
《计算机网络:自顶向下方法》(finish)
- 应用层(应用层、表示层、会话层)、传输层、网络层、链路层、物理层. (七层 -> 一层)
- 这里讲的内容,与准备面试时看的内容,会有些差集存在
《算法》(第4版)(have bought the book)
《算法导论》
《数据结构与算法分析 Java语言描述》(finish)
- (表、图、树 )–(AVL树、红黑树、DSL、AA树、KMP算法)
- 这个与LeetCode上的算法相比,比较基础,且没有动态规划、位运算等部分,面向面试的算法学习还是要卷LeetCode才行。
《编译原理》(龙书)
《数据库系统概念》
- 这本也是经典
Polyglot
《Think in Java》(finish)
《Java核心技术》(finish)
- 略去Swing和AWT部分,与Swing类似的是JavaFX
- Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架。框架中进行了诸多的封装,为JavaWeb的开发提供了诸多的便利。
- Java核心技术从一个偏低层的角度介绍Java,理解了这些,可以更好的理解这些框架的低层及原理
《深入理解Java虚拟机》(finish)
- 不负期待,这本的确很不错,并且基于Java 11 是学习JVM的不错的📚
- 方法执行的出/入栈,并不是Java特有,学算法的时候,将x86的指令执行也是基于栈的,方法/函数栈
《Java性能优化权威指南》(finish)
- 前面讲述了性能相关的影响因素及JVM,性能监控、性能分析、性能调优
《C程序设计》(第五版)(finish)
- 这本是大学教材,通过这个来入门,感觉还可以
- 库函数并不是C语言的一部分
- C只是入了门,了解了简单的语法
《C Primer Plus》
Kotlin
- Kotlin作为JVM Base的语言,有着许多Java很长时间内未有的Feature,从各种角度有了解的必要,并且依托Java的基础,学习曲线会平缓一些
- 当前已了解Basic Syntax & Coroutines,更深入的会视机会继续
Go
- 会学一下,考虑放在24或25年,Sense of Basic Syntax
- https://github.com/0voice/Introduction-to-Golang
《Go 语言圣经》
《汇编语言:基于x86处理器》(finish)
- 从了解的角度,不是很难
- 从熟练的角度,任重道远
Python
- Sense of Basic Syntax
大数据
- 分布式计算:Hadoop 生态系统(HDFS, MapReduce, YARN)、Spark、Flink – (finish)
- 分布式存储:HBase、Hive、Cassandra、Kudu、实时数仓、离线数仓
- 数据流处理:Kafka、Storm
- 数据处理:ETL工具、数据清洗
- 数据库技术:关系型数据库、NoSQL数据库
Design
《设计模式:可复用面向对象软件的基础》(finish)
- 看的比较浅,后续回来再翻翻,并逐步用在项目中
- 收获还是不少的,后续看看C++的基础语法,这样能更好的理解里面的例子
《重构:改善既有代码的设计》(finish)
- 小步重构,每步进行Unit Test
《人月神话》(finish)
- 更多的乐趣,尽在将来。
《数据密集型应用系统设计》 Designing Data-Intensive Application – DDIA (finish)
- MIT 6.824
- https://vonng.gitbooks.io/ddia-cn/content/
- 结束第一轮,📖还不错,并且较虚无缥缈的高并发、分布式,讲的是更实际的内容。
- 后面会看看视频 MIT 6.824
《领域驱动设计》 DDD (finish)
《软件设计师教程》(finish)
《系统架构设计师教程》
- 已看完教材和视频
- 开始刷题、写论文
Basic Major
《英语》(complete round 1)
- 词汇量、阅读、听力、口语
- 这是一个持续的过程,期待一年能有提升,并长期持续下去(只是投入时间会少一些)
- 耗时一年、完成round 1,收获不好说,但之后负担会轻一些
《高等数学》(finish)
- 若只如初见,不只若初见
《线性代数》(finish)
- 恍若昨日
《概率论与数理统计》(finish)
- 略感陌生
《离散数学及其应用》
《大学物理》(finish)
- 物理是诸多的根基
《模拟电子技术基础》
《数字电子技术基础》
《电路》
Others
ChatGPT
- 如何使用,当前用来答疑还是很不错的
- Copilot
书名 | 计划 | 一轮 | 二轮 |
---|---|---|---|
《Think in Java》/《On Java 8》 | 2020 | ||
《计算科学概论》 | 2020 | ||
《数据结构与算法分析》 | 2020~2021 | ||
🌟《深入理解计算机系统》/《CSAPP》 | 2021 | 2024 | |
《计算机网络:自顶向下方法》 | 2021 | ||
《Java核心技术》 | 2021 | ||
《深入Java虚拟机》/《深入理解Java虚拟机》 | 2022/2023 | ||
《算法(第4版)》 | |||
《设计模式:可复用面向对象软件的基础》 | 2022 | ||
《Java性能优化权威指南》 | 2022 | ||
《重构:改善既有代码的设计》 | 2022 | ||
《C Primer Plus》 | |||
《408-数据结构》 | 2023 | ||
《408-操作系统》 | 2023 | ||
《408-计算机组成原理》 | 2022~2023 | ||
《408-计算机网络》 | 2023 | ||
🌟《计算机程序的构造与解释》/《SICP》 | 2023 | ||
《数据密集型应用系统设计》/《DDIA》 | 2023 | ||
《数据库系统概念》 | |||
《人月神话》 | 2023 | ||
《领域驱动设计》/《DDD》 | 2023 | ||
《编译原理》 | |||
《高等数学》 | 2023 | ||
《线性代数》 | 2023 | ||
《概率论与数理统计》 | 2023 | ||
《汇编语言:基于x86处理器》 | 2023~2024 | ||
《离散数学及其应用》 | |||
《软件设计师教程》 | 2024 | ||
《系统架构设计师教程》 | 2024 | ||
《计算机组成与设计 硬件软件接口》 | |||
《模拟电子技术基础》 | 2024~2025 |