snmp4j开源代码研究总结
来源:互联网 发布:网络教育有学士学位吗 编辑:程序博客网 时间:2024/05/18 01:45
由于工作中的需要,最近在研究SNMP协议和利用snmp4j和snmp4j.agent( http://www.snmp4j.org/),实现snmp的南向和北向功能。结合以前看过的一些开源代码,就如何去研究开源代码做如下总结:
1、研究要联系理论
要有一定的目标和一定的基础知识后再去研究。比如研究snmp4j和snmp4j.agent,那首先得弄清楚什么是SNMP协议,它包括哪些组成要素等;又比如,研究tomcat源码,事先了解一下服务器的原理,多线程,web,servlet等知识,研究起来会更轻松些。
2、获取可用实例
首先下载可用源码以及依赖文件,然后导入到所用的IDE中。获取实例方式有如下:
2.1 从源码有类似“example”,"test",“sample”等包或者类中获取
如下图所示:
2.2 网上查找
这个不用多说了,网上的资源很多,关键的一点是要懂得去甄别和取舍,有些例子是会误导人的,建议到一些比较有名的网站上查找;然后,例子也不在于多,关键在于质量。
3、运行实例,了解运行机制
首先,将代码运行起来,往往是改一些输入参数即可。这就要求明白为什么需要改这个参数;
其次,调试模式下,结合打断点,日志,console方式查看运行输出,遇到不明白地方,做一些标识,多去看看注释,必要时要结合理论知识来理解或者解释;已经理解的地方也要及时标识。
最后,利用一些辅助工具进行调试,如snmp调试工具有“MIBBrowser”(http://www.mibexplorer.com/), “ireasoningMib”(http://ireasoning.com/)。
4、动手修改实例
对运行机制有一定的了解之后,就要自己动动手,改造一下实例,明白运行原理。 比如,某个方法的输入值改变之后会有什么效果,某个方法调用去掉后,运行后又会报什么错误。 一定要动手改造,才有可能更深入理解。
5、整合信息,进行二次开发
在3、4步骤进行到一定程度的时候,可以进行比较粗糙的二次开发或者封装了(不用等到完全了解和构思好了才进行,这样就很难下手了)。二次开发的起始点就是在实例的基础上进行抽象或者改造,同时边进行二次开发,边重 复3、4步骤,有助于进一步理解源码,也有利于促进二次开发;不断重构,进行更加适度的数据模型,控制流等抽象(切勿过于追求细,否则得不偿失)。
6、向“高手”请教
如果你周围或者通过网络能找到“高手”,多向他们请教,这个可以节省很大精力,所谓站在巨人的肩膀上嘛。至于如何请教,这里不做详细讨论,只简单说几点:
1) 对于研究过程中严重阻塞进行下一步的研究问题要多问;
2) 向他们“索取”一些有用的资料,如一些可用实例或者背景资料等;
3) 共同探讨业务问题,反过来会对进行二次开发有所启发;
- snmp4j开源代码研究总结
- 传奇3源代码研究总结【实用】
- 总结一下可以研究的CAD源代码
- 总结一下可以研究的CAD源代码 .
- 总结一下可以研究的CAD源代码
- SNMP4J
- SNMP4J
- SNMP4J
- 金山开源代码研究之一
- 从正在研究的drupal openscholar 总结一下开源代码的开发经验
- Snmp学习总结——SNMP4J介绍
- Snmp学习总结(三)-SNMP4J介绍
- 开源代码网站总结
- 开源代码总结
- aFreeRDP android开源代码的学习研究
- 开源框架研究----Otto源代码分析
- Snmp学习总结(二)——SNMP4J介绍
- Snmp学习总结(七)——SNMP4J介绍
- 高通平台音频调试心得
- 回来继续博客了
- struts2基本知识点—HelloWorld篇
- 考试系统总结
- 黑马程序员_网络编程
- snmp4j开源代码研究总结
- 静态方法为什么不能使用this和super关键字
- geoserver 中文乱码最后解决办法
- 特征选择方法之信息增益
- Nginx学习之五-nginx基础架构设计
- CentOS 6.4 安装rpmfusion源
- Linux Shell 命令--tr
- 雪仔
- Ubuntu 11.04 源