赞
踩
普通方法
通讀需求文檔,了解項目用途
一个企业级的项目,一定会保留一些相关文档吧!比如需求文档,设计文档,项目计划、软件使用说明书等,先通读这些文档,了解项目的用途、主要功能等。
熟悉開發工具、常用功能
每个公司用的开发环境都会有些不同,要熟悉新的开发环境,了解常用的功能、快捷键等
部署環境,把項目跑起來
了解开发环境后,就把相关的配置部署好,把项目跑起来。
把项目跑起来后可以快速地了解项目的用途和功能。
看項目結構
一般项目结构会体现系统结构上的层次,并根据经验和项目命名猜测作者的设计思想
展開項目目錄
根据经验和目录命名猜测作者的设计思想
瀏覽文件
根据文件名猜测文件功用,粗略看
選切入點
从入口点切入,走一遍业务逻辑,了解设计思路
嘗試添加功能或者修復bug
修改bug和添加功能是熟悉项目最好的方法。能做到时,基本熟悉这个项目的结构和逻辑了。
特殊方法
如何文档啥的没有,那就直接读代码。
幾個關鍵點
一个源码首先第一步不看代码,看结构,大致知道采用的是那种设计模式,例如函数式的还是mvc方式的,接下来从一个功能入手,先用firebug或者chrome的工具查看请求的url,以及请求url后web前端表现出来的,接下来,上面的模式用到了,去看url对于的方法吧,方法中必定会调用其他的方法,层层递进,分析下来,这个小功能的实现懂了吧,然后多多分析各个功能的实现,大致这个源码的结构熟悉了,那么带着前端的一些操作去摸索各个功能点的实现方法吧
1、拿到代码查看项目当中是否有readme这样的文件,如果没有查看是否有文档之类的
2、代码当中没有文档,那么就想你的同事或者其他人要这个框架的介绍或者资料
3、先请教别人这个框架的大体思路
4、自己独立去按照文档或者其他人说的思路去看代码
5、不懂的地方全部记录下面,一次行去问,有的时候很多问题在你看到后面的东西的时候就自然明白了
6、看懂了代码之后自己尝试着写一个,看自己的理解是否正确就这么多了。
要养成一个习惯, 经常花时间阅读别人编写的高品质代码.
要有选择地阅读代码, 同时, 还要有自己的目标. 您是想学习新的模式|编码风格|还是满足某些需求的方法.
要注意并重视代码中特殊的非功能性需求, 这些需求也许会导致特殊的实现风格.
在现有的代码上工作时, 请与作者和维护人员进行必要的协调, 以避免重复劳动或产生厌恶情绪.
请将从开放源码软件中得到的益处看作是一项贷款, 尽可能地寻找各种方式来回报开放源码社团.
多数情况下, 如果您想要了解"别人会如何完成这个功能呢?", 除了阅读代码以外, 没有更好的方法.
在寻找bug时, 请从问题的表现形式到问题的根源来分析代码. 不要沿着不相关的路径(误入歧途).
我们要充分利用调试器|编译器给出的警告或输出的符号代码|系统调用跟踪器|数据库结构化查询语言的日志机制|包转储工具和Windows的消息侦查程序, 定出的bug的位置.
当向系统中增加新功能时, 首先的任务就是找到实现类似特性的代码, 将它作为待实现功能的模板.
在移植代码或修改接口时, 您可以通过编译器直接定位出问题涉及的范围, 从而减少代码阅读的工作量.
进行重构时, 您从一个能够正常工作的系统开始做起, 希望确保结束时系统能够正常工作. 一套恰当的测试用例(test case)可以帮助您满足此项约束.
阅读代码寻找重构机会时, 先从系统的构架开始, 然后逐步细化, 能够获得最大的效益.
代码的可重用性是一个很诱人, 但难以理解与分离, 可以试着寻找粒度更大一些的包, 甚至其他代码.
在复查软件系统时, 要注意, 系统是由很多部分组成的, 不仅仅只是执行语句. 还要注意分析以下内容: 文件和目录结构|生成和配置过程|用户界面和系统的文档.
第一次分析一个程序时, main是一个好的起始点.
有时, 要想了解程序在某一方面的功能, 运行它可能比阅读源代码更为恰当.
在分析重要的程序时, 最好首先识别出重要的组成部分.
了解局部的命名约定, 利用它们来猜测变量和函数的功能用途.
当基于猜测修改代码时, 您应该设计能够验证最初假设的过程. 这个过程可能包括用编译器进行检查|引入断言|或者执行适当的测试用例.
理解了代码的某一部分, 可能帮助你理解余下的代码.
解决困难的代码要从容易的部分入手.
要养成遇到库元素就去阅读相关文档的习惯; 这将会增强您阅读和编写代码的能力.
代码阅读有许多可选择的策略: 自底向上和自顶向下的分析|应用试探法和检查注释和外部文档, 应该依据问题的需要尝试所有这些方法.
重新组织您控制的代码, 使之更为易读.
不需要为了效率, 牺牲代码的易读性.
创造性的代码布局可以用来提高代码的易读性.
在阅读您所控制的代码时, 要养成添加注释的习惯.
每次只分析一个控制结构, 将它的内容看作是一个黑盒.
使用保持含义不变的变换重新安排代码, 简化代码的推理工作.
把項目先運行起來
配置项目的运行环境可能是一件比较繁琐的事情,多多少少会遇到一些问题。但是在解决这些问题的过程中,可以让你对项目的技术路线有个大致的了解,例如所使用的开发框架、使用的库、数据库服务器等信息。
了解項目後端架構情況
深入項目,閱讀代碼
从被调用的接口入手,先看控制器的逻辑,再看被调用方法的功能,然后看sql语句,最后跟着sql语句去看看是对哪些表进行的操作。
閱讀項目代碼的四大原則
跑不起來的代碼不讀,用不到的代碼暫時不讀
以功能邏輯為主,不要死抓細節
虛心請教,學會提問
謹記筆記,多畫圖
对于整个系统而言,可以画一画系统的功能模块图,流程图等等;甚至可以先画图,再比照代码,看看自己理解的逻辑是否正确,这样整理成文档,有记不清的地方了还可以翻出来复习复习。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。