内容采集软件( 快三年怎么做软件必不可少?不同开发心得分享!)
优采云 发布时间: 2022-02-06 19:31内容采集软件(
快三年怎么做软件必不可少?不同开发心得分享!)
软件开发基础(1)—数据采集
从事软件工作近三年,一直在想自己做了什么,是怎么做的。现在抽空写一下自己的开发心得,一是帮助自己理解思路,二是给新人参考;以上都是我的个人经验,如果大家有不同的看法,欢迎交流,共同进步。
一般来说,软件必备的开发内容包括:数据采集、查询报表;数据采集,是软件系统数据的主要来源,是采集用户录入的数据,如:ERP系统凭证或文件等;数据采集一般包括:添加、修改、查看、删除、复制、打印等功能。查询报表是用户输入数据后,将数据以一定的格式展示给用户,通常采用列表或报表的形式;以列表的形式,一般只展示采集到的用户源数据信息,包括查询条件和列表相关的功能。它比列表形式更复杂,是根据一定的格式生成的。先说一下数据采集;
(-) 数据采集
Data采集包括添加、修改、查看、删除、复制、打印等功能。一般由两个界面组成,一个列表界面,一个数据录入界面,一个查询条件窗口用于更复杂的数据列表界面;现在我以一个更简单的图书管理系统为例来更好地理解。假设现在做一个维护账本信息的功能,控制流程图如下:
一般由过滤条件窗口、列表窗口、数据采集窗口组成;
各窗口界面的功能如下
过滤条件窗口:用户可以在该界面输入相关的过滤条件,窗口将条件传送到列表窗口,当再次被列表界面调用时,可以接收到列表的过滤条件(即最后选择的过滤条件);过滤条件接口其实也属于数据采集接口,但是它采集的数据不需要永久保存;
列表窗口:基本功能是将数据的主要内容以列表的形式展示出来,更重要的是,它是数据采集其他功能的激活点;它应该收录的数据 采集 功能按钮有:添加、修改、复制、删除、查看,如果需要的话,还包括辅助功能“定位”按钮,当然还有不可缺少的列表数据输出功能“打印”也是必要的;添加、修改、复制、查看这四个函数调用数据采集窗口完成,其他功能由列表表单自己完成
数据采集窗口:顾名思义,这个窗口负责数据采集功能,它的用户交互要求非常强。在开发中要特别注意使用性强和可操作性;此窗口由列表窗口触发。,它的表单类型应该是响应窗口;除了data采集(新建,修改),一般我都会将窗口复用为查看窗口,复制窗口,既减少了开发时间,又增加了源代码的可维护性,已经最大化. (OO的一个重要思想就是最大化复用,这个问题可以单独写一篇,呵呵;这里就不多说了)
上面已经介绍了通用的界面功能,界面设计就不讨论了,因为不同的开发工具有不同的界面设计。下面开始详细讨论程序是如何设计实现上述功能的:
上图是一个简单的类图设计
w_data_query为过滤器查询接口,w_data_list为列表接口,w_data_input为data采集接口。每个接口类的方法和它们的方法名一样是字面的;特别是 w_data_input 的 operation_type 属性用于控制窗口。body的操作状态是用来复用的,它的值是add、edit、copy、view来标识不同的操作状态;
过滤条件查询接口w_data_query的程序实现内容:
动作(方法或事件)
实施内容
事件打开()
1. 从列表中接收条件参数;
2. 初始化接口;
3. 给接口赋值条件参数;
事件正常()
1. 检查用户输入的条件是否合法
2. 将条件参数赋值给传递的参数
3. 关闭表单并返回(这里应该给调用表单的程序传一个值,表示是确认返回操作)
事件关闭()
关闭表单并返回(这里应该给调用表单的程序传一个值,表示是直接退出的返回操作)
列表接口w_data_list的程序实现内容:
动作(方法或事件)
实施内容
事件打开()
调用事件query()(这也是复用的一种体现)如果事件query()作为close参数返回,关闭表单返回
事件查询()
1.打开w_data_query(需要传入默认条件参数)
2.接收操作参数,如果关闭,返回关闭参数,如果没有,转步骤3
3.接收过滤条件参数并生成过滤条件
4.从数据库中读取数据,根据过滤条件生成列表数据
事件添加()
1.分配要添加的传输控制参数
2.将表单列表作为参数传递
3.打开 w_data_input
事件编辑()
1.判断用户是否选择了列表中要修改的行记录,如果选择了,执行2.否则提示用户
2.分配要编辑的传输控制参数
3.将表单列表作为参数传递
4.打开 w_data_input
事件复制()
1.判断用户是否选中了列表中要复制的行记录,如果选中则执行2.否则提示用户
2.赋值转移控制参数为copy
3.将表单列表作为参数传递
4.打开 w_data_input
事件删除()
1.判断用户是否在列表中选择了要删除的行记录,如果选择,则执行2.否则提示用户
2.读取选中记录的主键,根据主键从数据库中删除与该记录相关的所有信息;如果被删除,则执行3,否则会提示用户删除失败
3.从列表中删除记录
活动地点()
一般是调用一个函数的定位接口实现。这是一个用户友好的功能,稍后将在 文章 对此方面的讨论中进行描述。
事件关闭()
关闭表格
过滤条件查询接口w_data_input的程序实现内容:
动作(方法或事件)
实施内容
事件打开()
1. 接收列表对象参数
2. 接收数据参数
3. 初始化接口
4. IF 不是新的(修改、查看、复制)
{
读取原创数据并显示到界面
如果是副本
{//复制
将控制参数更改为新的
}
别的
{//修订
IF是修改
{
使主键不可修改(启用=假)
}
别的
{//查看
将所有数据设置为不可修改模式 (enable=false)
}
}
}
入口辅助方法
1.为用户输入数据提供帮助界面,方便用户;对于大型系统,一般使用通用的帮助界面进行处理(设计模式中的工厂模式和适配器模式都提供了这种处理方法模型);
2.用户直接输入的数据最好提供自动模糊搜索匹配;我一般把这个逻辑处理抽象成一个单独的检测方法,这样保存检测等地方的时候也可以使用;(在做软件过程中,使用比较常用的方法和控件,可以为自己以后的开发和整个项目组的开发提供重用,方便维护,易于扩展;)
事件保存()
1. 保存检查:数据完整性检查
一般将save检测过程做成单独的form方法使用;保存和检测时要注意,检测失败时提示用户修改,并将焦点定位在要修改的数据控件上;
2. 保存:提交数据到数据库
3. 回填数据到列表
* 分开保存数据和刷新列表可以提高速度,尤其是在B/S结构中