技术原理
技术原理即技术背后的 实现思想、架构设计、代码 ,学习一个技术的实现原理就是学习这三个方面的内容。
这三个方面也是层层递进的关系,越来越具体。
- 首先,思想是宏观的东西,构建起整个技术的理论支撑;
- 其次,架构是思想的进一步推敲和论证的产物;
- 最后,就是代码了,结合思想和架构设计变成一行行的可执行代码。
所以,你看学习技术原理的路线图和目标就出来了,第一,学习思想构建起宏观概念 ;第二,学习整体架构及局部架构掌握整体结构的组成和相互之间的关系;第三,学习代码的实现和逻辑。
举例说明一下,学习 "HashMap原理",这时候首先应该构建起的是它的数据结构知识即哈希表的概念和特点(其实如果再拔高一点,应当是先建立起各种数据结构和相互之间区别、特点及相关算法的思想和理论知识,当然这个要求就稍微高一些了),然后架构设计因为这是一个具体的类,所以这部分就是类中包含的核心方法及作用,最后就是深入代码,学习具体的代码实现逻辑,比如put方法是怎么存入数据的,又在什么情况下会进行扩容等等。
技术本质
简单理解,技术的本质就是解决问题,将解决问题的前因后果分别具体化研究,展开来说本质就是除过上面说到的技术原理之外,还应该包括 技术所解决的核心问题 和 应用场景 以及 存在什么样的优势和不足。
总结一下,就是以下3点内容:
- 技术解决的核心问题和应用场景
- 技术原理
- 技术特性
所以,你看学习技术本质的路线图和目标也就出来了
- 掌握技术解决的核心问题和应用场景,即搞明白它可以用来干什么;
- 研究技术原理,即搞明白它为什么可以做到;
- 了解它的技术特性,即搞明白它的优势在哪里。
链接:https://juejin.im/post/5c7645ed6fb9a049eb3c9a46