Answers:
你读不读?
是。
如果这样做,多久一次
日常。不断。我处理大量开源项目(大多数与Python相关),并且必须阅读源代码,因为它是最准确的文档。
读取代码的程序是什么?
嗯 打开并阅读。
而且,对于新手来说,处理SVN(一堆文件)有点困难。有什么解决方案?
打开并阅读。然后阅读更多。
这并不容易。没有什么比这容易。没有通往理解的皇家之路。这需要工作。
您遇到的难题有几层。首先,可以从高层次开始,鸟瞰一下。签出项目后,目录结构中将会有一堆文件。无论您是看开源还是闭源(源代码毕竟是源代码),都是一样的。因此,从此开始:
这需要实践,但是绝对是可行的。您对应用程序正在使用的库和框架了解得越多,就越了解如何组织代码以及在何处寻找特定问题的答案。一些代码很难遵循,特别是如果它们是间接的。这就是为什么您需要铅笔和纸的原因。最终,灯泡在您的头上熄灭,您明白了。那就是在阅读其余代码时更有意义的地方。
这不是像读小说那样阅读,而是像阅读参考书那样。一个好的方法是从检入消息中选择一个最近已修复的错误,比较所做的更改,并阅读相关部分,直到您了解问题和解决方案为止。广为宣传的安全漏洞是一个有趣的错误,因为在论坛上有很多关于它们的讨论。然后从错误跟踪器中选择一个“低落的果实”错误,并进行阅读,直到您了解如何自己修复它为止。阅读代码的大多数专业人员在修复错误或添加功能时都是偶然的。
通常,最好的代码示例几乎没有引起注意。您将立即了解它们,而无需多次阅读它们。即使看起来不错的代码通常要经过许多草稿,它们也使编写起来似乎非常容易。它产生了自相矛盾的感觉,尽管给定的代码不是您想到的第一种方式,但是给定的代码当然是显而易见的方式。
当您遇到这样的代码时,请尝试了解编写代码所涉及的见解以及所涉及的设计原则,因此,将来在遇到类似情况时,可以希望采用相同的原则。
在阅读一些复杂的函数时,我经常使用的一个技巧是,代码段是在不更改逻辑的情况下开始将其重构为更具可读性的代码。
如何艰难地处理“一堆文件”?它与编写自己的代码没有什么不同,除了您没有对它的组织的事先了解,除非对其进行了记录。
如果您作为一个有名的程序员,不能从“一堆文件”中弄清项目结构,要么是一个组织得很差的项目,要么是一个无能的程序员(或者在极端情况下,两者都是)。
开始阅读,尝试找到一些切入点或其他必不可少的枢轴类/方法,并对它们如何从那里组合在一起有一个了解。不会是即时的,需要时间,但是即使没有文档也可以做到。