[CPyUG:83871] 大家都是怎么去分析别人的代码的?

classic Classic list List threaded Threaded
18 messages Options
Reply | Threaded
Open this post in threaded view
|

[CPyUG:83871] 大家都是怎么去分析别人的代码的?

wang fei
大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?

--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83910] Re: 大家都是怎么去分析别人的代码的?

周强
友情顶,我刚开始学Python,一看人家的代码头比较大,原来记得在eclipse里面看Java的代码好方便....
2009/4/16 wang fei <[hidden email]>
大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?
--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83913] Re: 大家都是怎么去分析别人的代码的?

zhao shichen
使用ctags实用程序。

2009/4/16 周强 <[hidden email]>
友情顶,我刚开始学Python,一看人家的代码头比较大,原来记得在eclipse里面看Java的代码好方便....
2009/4/16 wang fei <[hidden email]>

大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?



--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83916] Re: 大家都是怎么去分析别人的代码的?

wang fei
工具是一方面。但是那么多代码从哪里看起呢?

2009/4/16 zhao shichen <[hidden email]>
使用ctags实用程序。

2009/4/16 周强 <[hidden email]>

友情顶,我刚开始学Python,一看人家的代码头比较大,原来记得在eclipse里面看Java的代码好方便....
2009/4/16 wang fei <[hidden email]>

大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?






--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83918] Re: 大家都是怎么去分析别人的代码的?

沈崴
On Apr 16, 1:29 pm, wang fei <[hidden email]> wrote:
> 工具是一方面。但是那么多代码从哪里看起呢?

在合适的时候你自然会知道从哪里看起。
如果你不知道从哪里看起, 无须再看。
--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83924] Re: 大家都是怎么去分析别人的代码的?

raynix@gmail.com
In reply to this post by wang fei
我的想法:每个framework都有类似入口的文件,例如django里面你可以先看settings.py, urls.py。从这些下手吧。

On 4月16日, 上午8时55分, wang fei <[hidden email]> wrote:
> 大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?
--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83925] Re: 大家都是怎么去分析别人的代码的?

little4
In reply to this post by 沈崴
真是这样!
无目的的看代码基本无用。
无方向的看代码南辕北辙。

2009/4/16 沈崴 <[hidden email]>:
> On Apr 16, 1:29 pm, wang fei <[hidden email]> wrote:
>> 工具是一方面。但是那么多代码从哪里看起呢?
>
> 在合适的时候你自然会知道从哪里看起。
> 如果你不知道从哪里看起, 无须再看。
> >
>

--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83926] Re: 大家都是怎么去分析别人的代码的?

LaiYonghao
In reply to this post by 沈崴
善哉斯言,令人击节!

2009/4/16 沈崴 <[hidden email]>
On Apr 16, 1:29 pm, wang fei <[hidden email]> wrote:
> 工具是一方面。但是那么多代码从哪里看起呢?

在合适的时候你自然会知道从哪里看起。
如果你不知道从哪里看起, 无须再看。




--
赖勇浩的编程私伙局:http://blog.csdn.net/lanphaday


--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83927] Re: 大家都是怎么去分析别人的代码的?

kindy-2
In reply to this post by wang fei
如果是 web 框架的话,
看 demo 的启动入口,
一步一步跟进去。

再有就是分析请求的完整流程,
url 地址是如何映射到你的代码,
之前有过写什么预处理,
你代码返回结果它做了哪些处理。
核心就这些。


如果是其他的,也一样,
从启动处看起,
逐步跟进。


On Apr 16, 1:29 pm, wang fei <[hidden email]> wrote:

> 工具是一方面。但是那么多代码从哪里看起呢?
>
> 2009/4/16 zhao shichen <[hidden email]>
>
>
>
> > 使用ctags实用程序。
>
> > 2009/4/16 周强 <[hidden email]>
>
> > 友情顶,我刚开始学Python,一看人家的代码头比较大,原来记得在eclipse里面看Java的代码好方便....
> >> 2009/4/16 wang fei <[hidden email]>
>
> >> 大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?
--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83931] Re: 大家都是怎么去分析别人的代码的?

xxlxx@foxmail.com
In reply to this post by raynix@gmail.com
先开门,
往里走,
看大厅,
到房间,
回大厅,
到房间,
...
回大厅,
出大厅,出门。
 
 
2009-04-16


发件人: [hidden email]
发送时间: 2009-04-16  14:54:10
收件人: python-cn`CPyUG`华蟒用户组
抄送:
主题: [CPyUG:83924] Re: 大家都是怎么去分析别人的代码的?
我的想法:每个framework都有类似入口的文件,例如django里面你可以先看settings.py, urls.py。从这些下手吧。
On 4月16日, 上午8时55分, wang fei <[hidden email]> wrote:
> 大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?

--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83952] Re: 大家都是怎么去分析别人的代码的?

Gary Shi-2
In reply to this post by wang fei
代码是很细节的东西,如果你没有自己的思路,完全跟着他写到哪里就看到哪里,大规模代码不看晕才怪。

还是得靠top-down的方法,自己想好大致一个事情怎么做,然后照着你的思路去看具体代码实现,照着代码
回答自己思路中间的问题,同时修正设想的模型。

至于怎样在看具体代码之前就形成自己的想法,就看个人的分析、设计功底了。

On 4月16日, 上午8时55分, wang fei <[hidden email]> wrote:
> 大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?
--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83953] python中如何判断当前为何种操作系统

wu9961
请问,python中如何判断当前为何种操作系统。有类似c语言中的#ifdef WIN32类似的机制吗?

--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83954] Re: python中如何判断当前为何种操作系统

hongqing lv
import sys
sys.platform

2009/4/16 wu9961 <[hidden email]>
请问,python中如何判断当前为何种操作系统。有类似c语言中的#ifdef WIN32类似的机制吗?




--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83955] Re: python中如何判断当前为何种操作系统

wu9961
谢谢hongqing lv
 
 
2009-04-16

                               顺祝工作愉快,天天开心
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Name:吴晓磊
Tel:13466558646
~~~~~~~~~~~~~~~~~~~~~~~~~~~
 

发件人: hongqing lv
发送时间: 2009-04-16  18:42:00
收件人: python-cn
抄送:
主题: [CPyUG:83954] Re: python中如何判断当前为何种操作系统
import sys
sys.platform

2009/4/16 wu9961 <[hidden email]>
请问,python中如何判断当前为何种操作系统。有类似c语言中的#ifdef WIN32类似的机制吗?



--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:83993] Re: 大家都是怎么去分析别人的代码的?

guoqiang qian
In reply to this post by Gary Shi-2
有需求的时候自然知道从哪开始看了,比如,我最近想通过php来实现django的模板引擎,所以我就开始从模板的目录开始看

2009/4/16 Gary Shi <[hidden email]>
代码是很细节的东西,如果你没有自己的思路,完全跟着他写到哪里就看到哪里,大规模代码不看晕才怪。

还是得靠top-down的方法,自己想好大致一个事情怎么做,然后照着你的思路去看具体代码实现,照着代码
回答自己思路中间的问题,同时修正设想的模型。

至于怎样在看具体代码之前就形成自己的想法,就看个人的分析、设计功底了。

On 4月16日, 上午8时55分, wang fei <[hidden email]> wrote:
> 大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?




--
一起分享生活和知识。
http://www.lifefix.cn

--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:84027] Re: 大家都是怎么去分析别人的代码的?

samson-10
In reply to this post by wang fei
很简单,先看简单的,一点一点加大难度。
--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:84148] Re: 大家都是怎么去分析别人的代码的?

程晨
我刚毕业的时候也是遇到这样的问题。
在大学里面只学过C语言、数据结构和算法这些都是学了点理论皮毛。
结果一去公司,就扔过来几十万行的大项目,说,以后这一部分你都得看,还得维护。
从来没有人教过这些东西,也没有人告诉我怎么看。具体到每个函数,几乎都没有难度。
都是传入参数,校验,执行操作,返回数值。里面完全没有牵涉到复杂的数据结构和算法。
但是从整个工程上看,根本都无法看到整体结构。
吓得我从此放弃了做程序员为职业的想法。
 
这几年工作之后发现,很多时候,你需要用电脑做一些自动化的操作。比如过节的时候,
你从公司通讯录excel读出几十个同事的电话号码,并调用手机的USB模拟串口发送祝福的短信。
有时候,你看到一个A站,里面有很多爽图爽片可供下载,可是它是以博客的形式组织的,
每一篇文章里面只有一个链接,点进去之后还只是rayfile或纳米盘的链接,你需要自动化的一次下载个够。
 
02年的时候买过python核心编程第一版,那时候翻了一下,也没有特别关注,觉得就是个
和java差不多的东西,而且很偏门,既不能用于找工作,做一款共享软件也不合适,就放到书柜再也没动过。
 
现在重新捡起来一看,python拿来做这些事情太合适了,google一下找到相应的模块,100行以内,基本都
能搞定。用这些模块的时候,有时候就好奇,打开模块的文件看看,人家到底是怎么实现的。遇到很复杂的,
有时候也就不乐意看了,上网搜文档,遇到简单的,看一下就有点收获。
 
以上是一个纯业余的闲扯。如果你想学一样东西,先想清楚自己为什么而学吧。如果是职业的,还是以
公司目前的项目入手,找个人带,多想多问。如果是业余搞着玩,就找一些小程序看看,自己平时生活
上用的着的东西写写,比如写个翻wall的小工具之类的。反而有收获,一口吃不成个胖子,小的东西看多了,
看大的自然也就顺其自然了。

--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---

Reply | Threaded
Open this post in threaded view
|

[CPyUG:84303] Re: 大家都是怎么去分析别人的代码的?

mengqc
In reply to this post by xxlxx@foxmail.com
我的经验是先会用,边用边看。

On 4月16日, 下午3时43分, "[hidden email]" <[hidden email]> wrote:

> 先开门,
> 往里走,
> 看大厅,
> 到房间,
> 回大厅,
> 到房间,
> ...
> 回大厅,
> 出大厅,出门。
>
> 2009-04-16
>
> 发件人: [hidden email]
> 发送时间: 2009-04-16  14:54:10
> 收件人: python-cn`CPyUG`华蟒用户组
> 抄送:
> 主题: [CPyUG:83924] Re: 大家都是怎么去分析别人的代码的?
>
> 我的想法:每个framework都有类似入口的文件,例如django里面你可以先看settings.py, urls.py。从这些下手吧。
> On 4月16日, 上午8时55分, wang fei <[hidden email]> wrote:
>
> > 大家都是怎么去分析别人的代码的?尤其当代码规模比较大时,比如django、ulipad,应该怎么看、从哪里入手?
>
>
--~--~---------~--~----~------------~-------~--~----~
来自: `python-cn`:CPyUG ~ 华蟒用户组 | 发言:[hidden email]
退订: http://tinyurl.com/45a9tb /针对163/qq邮箱:http://tinyurl.com/4dg6hc
详情: https://groups.google.com/group/python-cn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
-~----------~----~----~----~------~----~------~--~---