在水木上看到的代码阅读的方法
2008-07-23 18:05
225 查看
我学习程序设计差不多4年了,这四年主要是编写代码,但是我记得哪个高人说过代码的编写需要靠读代码+写代码相互配合才能达到好的效果,而且最好阅读一个完整的系统的代码。
我最近想研究一下一个叫lcc的东西,属于一个C编译器。我之前也写过一个比c简单的编译器,所以有一些了解。但是对于阅读一个现有的编译器,但是我实在是不知道该从哪里入手,从哪部分看是看起。或许你会说“看你感兴趣的部分”,但是对于我感兴趣的部分,我都不知道如何和其他部分相衔接的(没错或许你会从代码片断中得到很多或者是少许灵感,但是那终究不是研究一个系统)。
我想问问一些阅读过完整系统的同学高手,你们是如何做一些前期的阅读的工作的,然后如何进行阅读的,是否有具体的方法或者是标准(比如对于某些代码的理解只需要达到某个标准就好,不用完全理解),
迷茫中……,希望高手指点。
ps:是否有兄弟们阅读过gcc的代码,阅读gcc代码需要特别高的智商吗?
有一本讲lcc代码的书,很不错
你先把书看一遍,代码应该就很好懂了
http://www.amazon.com/Retargetable-C-Compiler-Design-Implementation/dp/0805316701
我和你正好相反,我代码看了很多,但是代码写的不多,我的经验是调试testcase,这个至少对我比较有用,对于gcc,可以直接去它的bugzillar上找人家已经fix的报告,或者没有fix的,然后跟着人家的步骤去调试bug,这样可以知道这个问题的来龙去脉。像对于一些比较稳定的系统,bug不是特别多,很多bug看上去很简单,但是都是涉及一些主要模块的东西,在bugzillar上他们都会有详细的描述和讨论,包括一些设计的背景。。而且分类的都很好,可以很快找到你感兴趣的模块。关键最快的方式还是问题驱动,自己尝试的去修改一个系统,在这上面做一些事是最好的方式。。
有源代码,就可以分析一下数据结构以及函数调用流程。然后调试,跟踪出自己不是很清楚的数据结构部分。明白了数据结构之后,所有的问题将会迎刃而解。
我最近想研究一下一个叫lcc的东西,属于一个C编译器。我之前也写过一个比c简单的编译器,所以有一些了解。但是对于阅读一个现有的编译器,但是我实在是不知道该从哪里入手,从哪部分看是看起。或许你会说“看你感兴趣的部分”,但是对于我感兴趣的部分,我都不知道如何和其他部分相衔接的(没错或许你会从代码片断中得到很多或者是少许灵感,但是那终究不是研究一个系统)。
我想问问一些阅读过完整系统的同学高手,你们是如何做一些前期的阅读的工作的,然后如何进行阅读的,是否有具体的方法或者是标准(比如对于某些代码的理解只需要达到某个标准就好,不用完全理解),
迷茫中……,希望高手指点。
ps:是否有兄弟们阅读过gcc的代码,阅读gcc代码需要特别高的智商吗?
有一本讲lcc代码的书,很不错
你先把书看一遍,代码应该就很好懂了
http://www.amazon.com/Retargetable-C-Compiler-Design-Implementation/dp/0805316701
我和你正好相反,我代码看了很多,但是代码写的不多,我的经验是调试testcase,这个至少对我比较有用,对于gcc,可以直接去它的bugzillar上找人家已经fix的报告,或者没有fix的,然后跟着人家的步骤去调试bug,这样可以知道这个问题的来龙去脉。像对于一些比较稳定的系统,bug不是特别多,很多bug看上去很简单,但是都是涉及一些主要模块的东西,在bugzillar上他们都会有详细的描述和讨论,包括一些设计的背景。。而且分类的都很好,可以很快找到你感兴趣的模块。关键最快的方式还是问题驱动,自己尝试的去修改一个系统,在这上面做一些事是最好的方式。。
有源代码,就可以分析一下数据结构以及函数调用流程。然后调试,跟踪出自己不是很清楚的数据结构部分。明白了数据结构之后,所有的问题将会迎刃而解。
相关文章推荐
- 阅读程序代码的技巧与方法
- 笨方法学习Python-习题38: 阅读代码
- 代码阅读方法与实践(三)
- 阅读layim代码小记,监听事件实现方法
- [读书笔记]阅读代码的方法与实践(一)
- 【代码阅读的方法与实践】第6章 应对大型项目
- 提高代码阅读能力的7种方法
- 提高代码阅读能力的7种方法
- 常用代码阅读方法
- Android中ImageButton自定义按钮的按下效果的代码实现方法,附网上2种经典解决方法。 2014-07-04 13:17 78人阅读 评论(0) 收藏
- 阅读代码的方法
- Android第一行代码阅读笔记001 主要文件夹介绍、activity的注册、资源引用的方法、Log日志打印的使用
- 代码阅读总结之ASP.NET StartKit TimeTracker(自定义集合类排序(Sort())方法随笔)
- 【代码阅读的方法与实践】第7章 编码规范和约定
- 代码阅读总结之Fitch and Mather 7.0(asp.net发生异常或错误时错误提示页面的处理方法)
- 代码阅读方法与实践 读后感2
- 如何看待Linus “从不认为阅读别人的代码是了解某个想法的一种有用的方法” 言论?
- 阅读代码的方法
- 阅读《Effective Objective-C 2.0 编写高质量iOS与OS X代码的52个有效方法》总结
- 提高代码阅读能力的7种方法