为了账号安全,请及时绑定邮箱和手机立即绑定

学习设计模式有利于读懂开源项目的代码吗?

学习设计模式有利于读懂开源项目的代码吗?

慕容森 2018-08-04 09:21:19
最近在阅读一些优秀的开源项目源码的时候,遇到了一个问题。对于某一行代码,我知道它是用来做什么的,但是就是不明白作者为什么要这么写。我想了一下,觉得可能是自己对于程序设计这一块不熟悉。所以打算从设计模式入手。我的问题是,设计模式能否满足我的需要?还是说我现在这种水平注定是读不懂的,等基础知识足够扎实以后会无师自通?注: 读的是Android开源项目
查看完整描述

2 回答

?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

我想了一下,觉得可能是自己对于程序设计这一块不熟悉。

是的,你觉得没错。

所以打算从设计模式入手。

这是一个好主意。不过你不要期望能够“毕其功于一役”,这很难。要真正学懂设计模式并能灵活的运用/套用在现实中,需要很多次/长期的反复学习与练习。你的基础和天赋会有助于减少这些消耗,但有的东西仅仅是靠看书真的无法变成知识。

对于你的问题,答案是肯定的。虽然你现在的“不明白”不一定全是因为你不懂程序设计,但软件设计的知识总是能够帮助到你,多多少少。

注意一点,设计模式并非软件设计的全部,只是其中的很重要的一部分。在我们编程生涯的很长一段时间里,我们都会经历想你说的那种“这种水平注定是读不懂的”的阶段,但是这不应当成为阻拦你继续阅读源代码的理由。

所谓“无师自通”是不太现实的,学习编程这件事情本身就没有定规,它是一种综合素质的体现。你不能指望自己一头扎进“设计模式”的大坑,等爬出来之后“阅读开源项目”就水到渠成了;反过来也是一样。它们应该是相互促进的关系,有点类似于“理论与实践相结合”。

阅读源代码的时候,重点不在于“我是否完全懂了”,而在于“我都读懂了哪些?还有哪些不懂?”懂了的,实际动手的时候尝试用进去,不懂的,学习软件设计的相关知识去搞懂它。并且有鉴于此,阅读源码也不一定非要选择大型项目,有的时候哪怕十几行的片段都能让人受益匪浅——不过当然,谈及到“设计”的层面,当然要上到一定的规模才能有所体现。


查看完整回答
反对 回复 2018-08-06
  • 2 回答
  • 0 关注
  • 1498 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信