正如之前的「程序设计2.0」文中所提到的,你可以透过开放原始码学习到新的技术、学习到高手的架构设计,大幅提高学习的效率及效果。 你甚至可以直接自开放原始码项目中抽取、提炼出自己所需的程序代码,站在巨人的肩膀上,直接由彼端获得所需的生产力。从这个观点来看,读懂别人所写的程序 代码,就不再只是从负面观点的「被迫接收」,而是极具正面价值的「汲取养份」。
倘若撰写程序代码是程序人的重要技艺之一,那么读懂别人的程序代码、接着加以修改,也势必是另一个重要的技艺。
如果你不能熟悉这项工作,不仅在遭逢你所不愿面对的局面时,无法解决眼前接手他人程序代码的难题,更重要的是,当你看着眼前现成的程序代码,却不知如何从中撷取自己所需,导致最后只能入宝山空手回,望之兴叹。
阅读程序代码的重点,不在于读完每一行程序代码,而是在于有效率地透过探索及阅读,从而了解系统的架构及行为模式。以便在你需要了解任何片段的 细节实作时,能够很快在脑上对映到具体的程序代码位置,直到那一刻,才是细读的时机。
探索架构的第一件事:找出系统如何初始化
系统如何初始化是很重要的一件事,因为初始化是为了接下来的所有事物而做的准备。从初始化的方式、内容,能知道系统做了什么准备,对于系统会有什么行为展现,也就能得窥一二了。
2.