免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 鬼才小科
打印 上一主题 下一主题

[C] 新手应该如何阅读别人的代码? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2009-06-10 15:52 |只看该作者

回复 #10 converse 的帖子

那你给指点一下吧,如何快速提高自己的能力.

论坛徽章:
1
双子座
日期:2013-11-14 17:43:24
12 [报告]
发表于 2009-06-10 16:04 |只看该作者
好像没有什么捷径,不过还是有些地方可以参考滴:

1. 选择那些比较好的,并且和自己水平比较接近的代码,最好是有讲解的。
   Minix源代码就是很好的例子。
   
2. 硬着头皮看,多动手实验,动手调试:善用编程工具,不要贪图工具的先进
   关键在于自己,工具只是工具

论坛徽章:
0
13 [报告]
发表于 2009-06-10 16:10 |只看该作者
运行,加打印语句,看看流程

论坛徽章:
0
14 [报告]
发表于 2009-06-10 16:23 |只看该作者

回复 #12 star_in_sky 的帖子

谢谢.我的能力还差,还得多多理解.阅读.

[ 本帖最后由 鬼才小科 于 2009-6-10 21:55 编辑 ]

论坛徽章:
1
射手座
日期:2013-08-21 13:11:46
15 [报告]
发表于 2009-06-10 17:06 |只看该作者
有一些代码不是一般的大,一行一行跟踪下来也很困难吧

论坛徽章:
0
16 [报告]
发表于 2009-06-10 17:15 |只看该作者
慢慢看,多看几次就明白了

论坛徽章:
0
17 [报告]
发表于 2009-06-10 18:38 |只看该作者
原帖由 鬼才小科 于 2009-6-10 15:21 发表


模块化设计的程序,应该怎么着手看呢.从main()开始,一个一个的看?


如果是面向过程,那就从main函数入手,边看边画流程图助记。
如果是面向对象,应该先梳理好各个模块的作用,以及之间关系。可以用一些UML工具或doxygen来生成类关系图,逐个模块去理解。模块理解好了之后才从main入手,结合时序图分析。毕竟对一些消息驱动的程序如MFC之流,对main函数的分析意义不大。

论坛徽章:
0
18 [报告]
发表于 2009-06-10 18:49 |只看该作者
程序应该有文档,没有文档的代码也要清晰、简洁,就像文档一样带有节奏感。
不妨先读文档,再入手代码。

论坛徽章:
0
19 [报告]
发表于 2009-06-10 19:06 |只看该作者
big picture

论坛徽章:
223
2022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:32操作系统版块每日发帖之星
日期:2016-05-10 19:22:58操作系统版块每日发帖之星
日期:2016-02-18 06:20:00操作系统版块每日发帖之星
日期:2016-03-01 06:20:00操作系统版块每日发帖之星
日期:2016-03-02 06:20:0015-16赛季CBA联赛之上海
日期:2019-09-20 12:29:3219周年集字徽章-周
日期:2019-10-01 20:47:4815-16赛季CBA联赛之八一
日期:2020-10-23 18:30:5320周年集字徽章-20	
日期:2020-10-28 14:14:2615-16赛季CBA联赛之广夏
日期:2023-02-25 16:26:26CU十四周年纪念徽章
日期:2023-04-13 12:23:10操作系统版块每日发帖之星
日期:2016-05-10 19:22:58
20 [报告]
发表于 2009-06-10 19:14 |只看该作者
一般的说,每个人都会有自己的,宝贵的,第一次,

过去就完了,有心是关键
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP