原理,什么是原理,技术原理我们到底学到了什么?
本质,什么是本质,如何才能理解和掌握技术的本质?
本文将描述两件事:技术原理和技术本质。
1、技术原理
先说“技术原理”这个词。 这个词大家应该都很熟悉。 每每提起这件事,我什至都会感到一丝痛苦和折磨。 是一线互联网公司面试官的最爱。 他们经常用它来调侃面试官,“我知道xx技术的实现”。 原则? 你能解释一下吗?”
技术原理是技术背后的实现思路、架构设计和代码。 学习一项技术的实现原理就是学习这三个方面。
这三个方面也是逐步关联、越来越具体的。
首先,想法是宏观的东西,为整个技术构建理论支撑;
其次,建筑是思想进一步阐述和论证的产物;
最后是代码,根据想法和架构设计将其转换为可执行代码行。
所以,如果你看技术原理的路线图和目标,首先,学习思路,构建宏观概念; 其次,学习整体架构和局部架构,掌握整体结构的组成及其相互关系; 第三,学习代码实现和逻辑。
举个例子,在学习“原理”的时候,这时候你首先要构建的就是它的数据结构知识,也就是哈希表的概念和特性(其实如果再往上走一点,你应该先构建各种数据结构以及它们之间的关系,差异、特点以及相关算法的思路和理论知识(当然这个要求稍高),然后进行架构设计,因为这是具体的类,所以这部分是核心方法以及类中包含的函数,最后深入代码,学习具体的代码实现逻辑,比如put方法如何存储数据,什么情况下会扩展等等。
如果没有上一部分的思想和理论的支持,不建议直接进入代码细节。 学习起来会非常痛苦和困难。 如果发现概念和理论方面的盲点,应该及时弥补,然后继续学习代码。
2.技术本质
说完了技术原理,我们再来看看技术本质。 简单理解,技术的本质是解决问题,详细研究解决问题的前因后果。 本质是,除了上面提到的技术原理之外,还应该包括该技术解决的核心问题和应用场景和存在。 有什么优点和缺点。
总结起来,有以下3点:
1、技术解决的核心问题及应用场景
2、技术原理
三、技术特点
因此,你可以看到学习技术本质的路线图和目标。 首先,掌握技术解决的核心问题和应用场景,即了解它可以用来做什么; 第二,研究技术原理,即理解它。 为什么可以做到; 第三,了解它的技术特点,也就是弄清楚它的优势是什么。
以redis为例。 它解决的核心问题是提供高性能的内存数据缓存服务。 虽然KTV认为它也可以用作数据库和消息代理,但在实际应用中它更多地用作数据缓存服务。
上面已经具体介绍了其技术原理。 读者可以触类旁通,在此不再赘述。
技术特性使得该技术优于其他类似技术。 以redis为例。 支持多种数据类型是redis的一个特点,支持持久化能力也是一个特点。 特性通常在技术选择中起着至关重要的作用。
只有理解了一项技术的以上四点,才能掌握该技术的精髓。 当我们再次研究技术原理时,不妨多花点功夫,一睹其技术本质。
让我来帮助你重新认识一下“本质”这个词。 下面这句话摘自网络。
IPFS本质上是一种内容可寻址、版本化、点对点的超媒体分布式存储和传输协议。
从表面上看,它更像是一个定义,告诉你IPFS是什么,但加上“本质”二字,让这句话看起来不那么简单。 “本质”二字的背后,是IPFS技术的内容。 它是可寻址的,具有版本控制、点对点、分布式传输的特点。 它解决的核心问题和应用场景是标准化的数据传输流程。
所以,作者想必已经窥见了这项技术背后的本质内容,得出了这句话。 我希望这没有让你感到困惑。
当我们再次看到“xx的本质就是xx”这样的类似词语时,希望大家能够多思考一下这句话本质背后的支撑。 有点偏离主题了,我收回来。
三、总结
可见,技术的本质包含技术原理,是一种包含关系。
本文旨在阐明技术原理和技术本质的真正含义和关系。 很多时候我们不会去深究这些看似理解的概念,但实际上真正理解这些东西可以帮助我们构建自己的知识体系和知识结构脉络。 非常清晰,不容易混淆。 学习一门新技术或者深入研究一门技术也会有明确的方向和目标。
最后,随着我们学习的东西越来越多,我们就会发现概念和理论(即思想)的重要性。 有清晰的概念和理论体系作为支撑,可以让我们的学习事半功倍。