快速的将插件引入到项目中:
一个优秀的开源项目一定会有overview,tutorial,FAQ,javadoc这几部分。为项目引入新的插件时可以遵循下列阅读顺序。
- overview中会说明项目的用途。
- 看完tutorial就可以编写一个demo了,有的tutorial有可能也很详细,这样的情况下可以先看自己关心的部分。
- 要尽量早的动手写代码!尽量早的动手写代码!尽量早的动手写代码!到了问题再去翻看tutorial和api(好的程序员在给方法起名字的时候都是很讲究的,基本上看方法名字就可以知道方法的用途)。
- 有的插件的源码中会有一个example包,里面会有一些示例。
调bug:
在出现bug的时候,可以遵循以下顺序:
- 首先确定是不是自己的逻辑问题
- 先百度,对于比较常出现的bug,可能百度就会有结果
- 对于百度不到的结果可以去项目网站上FAQ模块,该模块会有一些bug的解决思路。
- 最后都解决不了的问题只能通过阅读源码来解决了。
源码阅读技巧:
- 代码的阅读应该从主思路开始,先忽略掉不重要或者处理错误的分支。(“异常处理代码影响对代码的阅读”-java编程思想P277)
- 注意代码运行的log日志。
- 带着问题去阅读源码。
- 下列代码插入到方法中,可以查看方法的调用栈。
for (StackTraceElement ele : Thread.currentThread().getStackTrace()) {
System.out.println(ele);
}
API使用技巧:
- 要有根据方法名推测方法功能的能力,根据返回值挑选方法是不错的选择。
- 假设自己是插件的开发者,推测如果让自己设计的话会是怎样的类层次,什么方法会实现在什么类中。
- 一个插件可能会有很多类,但是核心类往往就那么几个,核心类的所有方法应该先浏览一遍。
查看类文件的来源
public static void main(String[] args) throws Exception { ProtectionDomain pd = ContentType.class.getProtectionDomain(); CodeSource cs = pd.getCodeSource(); System.out.println(cs.getLocation()); }