阅读他人的项目源代码步骤
相信很多人和我一样,面对着别人密密麻麻的代码,宁愿自己从零开始编写自己的代码,也不愿在别人代码的基础上修改: 阅读别人的代码太痛苦了! 在注释不明确、技术文档缺失,这一行行的代码犹如阅读天书一般,痛苦、煎熬,迷茫。因此,对于阅读别人的代码,我从内心有一种强烈的抵制情绪,甚至有些恐惧。
然而,阅读他人的项目源码是每一个写程序的人(我只是个在项目需要的时候偶尔写程序的,不敢自称程序员)必须经历的事情。也许我们 想提升自己的编程技能,学习他人优秀的编程风格,那阅读优秀的项目代码是毕竟的途径;也许我们要 研究某方面的功能或技术,那如果某个项目源码中已经有该技术或者功能的实现,根据源码“逆向工程”也是个方法;也许我们需要被迫接手别人未完成的项目,需要 在别人已完成部分的基础上实现功能的修改或则项目的移植,阅读他人源码则关系到我们吃饭的本领。恩,我就是属于第三种,为了移植别人项目中的功能而被迫硬着头皮去阅读已有的代码。为了让自己坚持下去,我逐渐说服自己要乐于从阅读他人代码中学习,你看,阅读他人代码的好处多多呀/微笑脸。 与其在内心中一直抗拒阅读他人代码,不如改变自己的心态,锻炼自己阅读他人代码的能力和技巧,用熟练的方法和套路提高阅读他人源码的体验。
我认为生活中遇到的绝大多数事情都可以总结出一种比较高效做事方法,或者叫套路,在阅读他人项目源码这件事情上也不例外。在看了一个月代码的基础上,综合前辈们的经验和自己的亲身体会,总结出了一套比较高效地阅读他人项目源代码的方法,如果你感觉叫套路或者方法有点儿太low,咱可以改头换面叫艺术。在我们遵循这种方法去阅读代码时,一般都会取得事半功倍的结果,希望自己今后能不断实践并优化这套方法,也希望能对正因阅读他人代码而苦恼的你有所帮助。
备份并编译运行代码
拿到项目源代码之后,首先应该对代码进行备份,因为很可能我们在哪儿就不小心改动了代码,养成备份的好习惯是很重要的。然后我们可以在IDE中编译运行,虽然看不到项目的细节,但是通过运行程序,我们会对程序的功能和运行过程有更加直观的认识。同时,编译运行的过程会让你了解到它使用的库、它所依赖的开发框架等等,这是提高我们对某个特定项目理解的好方法。如果我们想编写与正在探究的特定项目类似的