软件工程与创新实训课程总结

2021SC@SDUSC


课程总结

这次我们小组一起分析openmeetings代码,一开始我想提议以功能来划分任务,后面写起来发现这其实完全不可行。因为openmeetings代码量太大了,而且绝大部分代码并不能让我们很快地分析出它是属于哪个功能模块、完成哪个任务的。所以我觉得我们按包来划分工作是非常合理的。

同样,对于我分析的openmeetings-install包,我也无法做到按功能去讲解。只能先分析其大致结构,然后从我认为的最核心的文件夹(installation)、文件(ImportInitvalues.java)开始分析,再逐步涉及其他文件、其他文件夹。截至本篇文章,我已经分析完install包下的installation文件夹、1/3的cli文件夹、2/3的backup文件夹代码,大概已经分析完了3/5的install包代码。

在分析的过程中,会涉及到很多来自其他包的成员变量或方法。比如在我最近发布的几篇文章中,install/backup包下的BackupImport类中就引用了openmeetings-db包、openmeetings-util包的很多变量、方法。这些内容是划分给其他组员分析的,但为了能顺利分析我这一部分的代码,我也需要去研读他们那部分的很多相关代码,整个跨度比较大,完成一篇文章需要读的代码也远比展示出来的要多。
BackupImport类对openmeetings-db、util的引用
除此之外,为了顺利理解代码,我还需要学习非常多新的知识。比如在最近的几篇文章中,我需要新学simple序列化框架,了解怎么进行Java Bean和xml文件的转换;在之前的文章中,我需要学习XPath处理xml文件元素、Apache Commons CLI 命令行解析、Asterisk网络电话技术、JPQL查询、日志、Spring框架等等新的知识,学习完后才能看懂代码、对代码进行详细的理解和分析。

这次我分析的内容主要都是后端的代码,关于怎么加载资源配置、怎么更新修改数据库、怎么序列化对象等等,基本没有涉及到算法的内容。难度在于它涉及到了很多我们以前没有学习过的框架。通过这个学期对openmeetings代码的分析,我觉得自己也学习了不少新知识,提高了自己的代码阅读能力、查询检索资料的能力,还是有一定收获的。

文章链接汇总

可以访问我的专栏:openmeetings

openmeetings6.10安装配置 踩坑记录
openmeetings-install分析(一)——目录结构分析
openmeetings-install分析(二)——ImportInitvalues类分析(1)
openmeetings-install分析(三)——ImportInitvalues类分析(2)
openmeetings-install分析(四)—— Asterisk网络电话技术
openmeetings-install分析(五)——ImportInitvalues类分析(3)
openmeetings-install分析(六)——ImportInitvalues类分析(4)
openmeetings-install分析(七)——Admin类解析命令行分析
openmeetings-install分析(八)——Admin类询问阶段processInstall分析(1)
openmeetings-install分析(九)——Admin类询问阶段processInstall分析(2)
openmeetings-install分析(十)——Admin类询问阶段processInstall分析(3)
openmeetings-install分析(十一)——Admin类询问阶段processInstall分析(4)
openmeetings-install分析(十二)——Admin类询问阶段processInstall分析(5)
软件工程与创新实训课程总结

共计14篇

猜你喜欢

转载自blog.csdn.net/weixin_45830447/article/details/122102389