# OOP-WORK **Repository Path**: hankco/MianXiangDuiXiangZuoYe ## Basic Information - **Project Name**: OOP-WORK - **Description**: 面向对象作业 设计说明以及代码 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-10-25 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 10.30 第三次作业已上传,暂未完成 ### 面向对象作业-代码及设计 ### 目录结构 - OOP-Experiment-2 - data 保存原始数据的目录 - result 处理结果目录 - src 源代码目录 - analyzer 分析器包 - method 分析器方法包 - data 数据存储类包 - factor 工厂流程类包 1. 这次实验采用了分析器方法作为数据分析,构建出analizerBuilder方法,然后通过对原始数据Builder,再链接任意的分析器方法AnalyzerMethod,就得到结果,好处是可以适应不同的分析需求(只需要链接方法就可以了),也能够适应不同的数据类型 2. 分析链处理过后,会返回Hash>结构的数据,将所有row链接到同一标签下 3. 但是输出方法还很复杂,也没能做到按行处理,是将数据统一读入统一处理了。 ### 类功能说明 1. Factor 工厂类(输入源数据,由工厂操作后输出,相当于主类) 2. AnalyzerBulider 分析器构建类,实例化后可在类后链接任意分析方法,进行链式分析。统一返回>类型的字典 3. AnalyzerMethod 分析器方法接口,统一execute()方法 4. SortMethod 排序方法,返回按时间排序后的数据 5. FilterMethod 过滤器方法,返回筛选后的数据 6. DataStore 数据仓库,存储元数据的链表,返回链表迭代器iterator 7. Rowdata 最小数据单元(行,也可以是其他类型),存储单元属性 8. Reader 读数据类,单独分到一类是为了**当需求变化**时,方便重写读入策略,**但上课之后感觉这样设计不太好,不能按行读取**。 9. Outer 输出数据类,根据不同策略向文件输出。 ### 类图 ![类图](https://gitee.com/uploads/images/2017/1025/175323_5f18ee91_1196781.png "Screen Shot 2017-10-25 at 5.53.04 PM.png")