系统化构建自己的知识系统

       在我们面对很多问题的时候,即使是自己所处的专业领域,也只能较浅地说明其中缘由,而并不能非常系统的理解或者解释这些问题。根本原因在于对这些问题所涉及知识的理解不够深入,不够系统。

       举个例子:很多朋友面试的时候,面试官会问到 JAVA 中 ArrayList 和 LinkedList 这两种数据结构各自的使用场景。那很多人会讲到 ArrayList 适合检索或遍历操作场景,而 LinkedList 适合频繁插入与删除的操作场景,因为 ArrayList 使用了数组实现,LinkedList 使用了链表实现;但是,并不能全面与详尽地解释这两种数据结构基于各种操作的实现方式,比如:ArrayList 如何实现自增,这种实现方式对性能和系统资源上有何影响等。

       其实,这些知识点并不复杂,只因为我们没有深入的阅读两种数据结构的源码,没有基于其底层结构做详细学习与总结,如:数组与链表的实现原理,基于两种数据结构的各种操作(CRUD)的时间复杂度等。当我们理解到这个层面时,加以总结便可构架起了关于这类问题的知识结构,当再遇到这类问题及其衍生问题时,也会从根本上迎刃而解。

       以前,自己也缺少这样的意识和行动,对知识缺乏深入的理解和总结。其实,只要我们能一个一个的深入学习和总结,即可经过常年积累,逐步构建起属于自己的知识系统。

       所以,作为一个 IT 从业者,我试图从知识整体结构开始,逐步构建和完善自己的知识系统。如图所示:



       上图为自己初步构建的属于自己的知识系统,接下来将基于此结构逐步积累和完善自己的知识体系,该结构只是一个初步结构,以后可根据实际情况逐步完善和调整。

       希望自己可以坚持,共勉之!

猜你喜欢

转载自byloading.iteye.com/blog/2200095