研究源码真的很必要

作为开发者,可能会用到很多开源的UI库和框架,比如React,Vue,Spring 等,会使用是对开发者的最基本要求。这里我们要讨论一些关于要不要研究源码和如何研究源码的问题。

我觉得理解基础理论是我们解决问题的基础。像很多开源框架都是利用的最基础的理论知识去构建的,框架用到的基础数据结构,比如链表,各种树等,框架用到一些通用的设计模式,比如观察者模式,装饰者模式,工厂模式等,不一而足都是很基础的知识。这些基础知识构建了强大的软件框架。

解决问题的通用方法是我们解决问题的开端。不管你在哪个领域,前端还是后端,大数据还是人工智能,你都需要掌握这个领域最通用的问题领域解决方法。只有有了通用方法的加持,你才能在这个领域站住脚,以此为基础扩展出更优秀的解决方法,丰富你的能力范围。最通用的解决问题的方法必须得掌握。

以上说的这些基础理论和通用的解决方法要从哪里来?当然书本知识是我们学习理论知识最重要的方式,学生时代一直是这样。但是大家有没有想过,学习的那些理论知识和真实的实践有什么关系,如何才能用到实践中去。很多人会想,感觉学习了也没啥用,数学学好加减乘除就可以了,编程会写代码就行,不用学习太高深的数学理论。真的是这样吗?最近的人工智能比较火,人工智能的底层理论是什么?稍微了解一点的都知道矩阵,离散数学,概率论使用的最多。

很多人可能确实知道这个道理,但是不知道该怎么用到实践中去。那么在编程领域,一个很好的方式就是去研究源码吧,看看作者是怎么思考问题解决问题的,你能不能想到这种解决问题的办法或者你有没有更好的方式。

研究源码就是一个发现真理的过程。先找出你找出源码的某个功能,然后自己推测一下该怎么实现,然后根据推测去源码中验证你的推测,对了说明你也会解决这样的问题,错了也没关系,是一个提高自己的机会。

在研究源码中,你将学会很多没有用过的编程语言特性,你将学会设计模式,你将学会很多解决问题领域的算法,你将学会如何架构代码。你把你学到的然后多做总结,发表出来,让大家也评价一下。最后你真的可以去重复造一个你自己的轮子。也许你在圈层的影响力就有了,工作机会也会更多了。

总结一下,研究源码真的很有必要。

你可能感兴趣的:(研究源码真的很必要)