软件开发的基本内容(1)——数据采集
来源:互联网 发布:清风网络 编辑:程序博客网 时间:2024/04/28 22:33
软件开发的基本内容(1)——数据采集
做了快三年的软件了,总想着我到底做了些什么,做得怎么样,现在抽空写些自己的开发心得,一是为自己树理树理思路,二是给新人一个参考;这些都是本人的个人心得,若有不同看法,欢迎交流,共同进步。
一般有做软件必不可少的开发内容包括:数据收集,查询报表;数据收集,是软件系统数据的主要来源,就是收集用户录入的数据,例如:ERP系统的凭证或者单据等;数据收集一般包括:新增,修改,查看,删除,复制,打印等功能。查询报表,是用户录入数据后按照一定格式展示给用户看,一般是以列表形式或者报表形式;列表形式,一般只是展示收集的用户源数据信息,包括查询条件和列表相关功能, 报表形式,一般比列表形式复杂,是按照一定格式生成的。下面我先来说说数据采集;
(-)数据采集
数据采集包括新增,修改,查看,删除,复制,打印等功能。一般由两部分界面构成,一个列表界面,一个数据录入界面,对于较复杂的数据列表界面还会有一个查询条件窗口;现在我以较为简单的图书管理系统为例来说好理解些。假设现在要做一个功能来维护图书信息,控制流程图如下:
一般由过滤条件窗口,列表窗口,数据采集窗口构成;
各窗口界面的功能如下
过滤条件窗口:用户可以在这个界面录入相关的过滤条件,窗口传递条件给列表窗口,并被列表界面再次调用时可以接收列表的过滤条件(也就是上次选择的过滤条件);过滤条件界面其实也属于数据收集界面,只是它收集的数据不用永久保存到下来;
列表窗口:基本功能是以列表显示数据的主要内容,更重要的是它是数据收集其他功能的激活点;它应该包含的数据采集功能按钮为:新增,修改,复制,删除,查看,必要还要是包含的辅助功能“定位”按钮,当然必不可少的列表数据输出功能“打印”也是要有的;新增,修改,复制,查看这四个功能调用数据采集窗口完成,其他功能是列表窗体要自己完成的
数据采集窗口:顾名思义该窗口负责数据采集功能,其用户交互性要求很强,开发是尤其要注意要用较强的和操作性;该窗口是由列表窗口触发的,其窗体类型应该为reponse窗口;除了用于数据采集(新增,修改)外,一般我会将该窗口重用为查看窗口,复制窗口,这样不但减少了开发时间,还增加了源码可维护性,得到了最大限度的重用。(OO的重要思想之一就是最大限度的重用,这个问题可以单独写大一篇了,呵呵;这里就不多说了)
大体的界面功能上面都已经叙述了,界面设计方面就不讲的,因为不同的开发工具有不同的界面设计。下面我们开始详细讨论程序如何设计实现上面说到的这些功能:
上图是一个简单的类图设计
w_data_query 过滤条件查询界面, w_data_list为列表界面, w_data_input为数据采集界面,各各界面类的方法如其方法名的字面意思;特别要说明一下的是w_data_input的属性opertion_type,它用来控制窗体的操作状态,用于实现重用,其值为add,edit,copy,view分别标识不同的操作状态;
过滤条件查询界面w_data_query的程序实现内容:
操作(方法或事件)
实现内容
event open()
1. 接收来至列表的条件参数;
2. 初始化界面;
3. 将条件参数赋值到界面;
event ok()
1. 检测用户录入的条件是否合法
2. 将条件参数赋值到传递参数中
3. 关闭窗体,返回(这里应该传递一个值给调用窗体的程序表明是确认的返回操作)
event close()
关闭窗体,返回(这里应该传递一个值给调用窗体的程序表明是直接退出的返回操作)
列表界面w_data_list的程序实现内容:
操作(方法或事件)
实现内容
event open()
调用event query() (这也是一个重用的体现)如果event query()返回为关闭参数则关闭窗体return
event query()
1.打开w_data_query(需要传递默认条件参数)
2.接收操作参数,如果是关闭返回就返回关闭参数,如果不是执行第3步
3.接收过滤条件参数并生成过滤条件
4.根据过滤条件从数据库读取数据生成列表数据
event add()
1.赋值传递控制参数为add
2.将窗体列表作为参数传递过去
3.打开w_data_input
event edit()
1.判断用户是否在列表中选择了要修改的行记录,如果选中则执行2.否则提示用户
2.赋值传递控制参数为edit
3.将窗体列表作为参数传递过去
4.打开w_data_input
event copy()
1.判断用户是否在列表中选择了要复制的行记录,如果选中则执行2.否则提示用户
2.赋值传递控制参数为copy
3.将窗体列表作为参数传递过去
4.打开w_data_input
event delete()
1.判断用户是否在列表中选择了要删除的行记录,如果选中则执行2.否则提示用户
2.读取选中记录的主键,根据主键从数据库中删除该记录相关的所有信息;如果删除执行3,否则提示用户删除失败
3.从列表中删除该条记录
event location()
一般调用一个功能的定位界面实现,这个是用户方便性功能,以后在讨论这方面的文章中叙述
event close()
关闭窗体
过滤条件查询界面w_data_input的程序实现内容:
操作(方法或事件)
实现内容
Event open()
1. 接收列表对象参数
2. 接收数据参数
3. 初始化界面
4. IF 不是新增(修改,查看,复制)
{
读取原数据并展示到界面
IF 是复制
{//复制
将控制参数更改为新增
}
ELSE
{//修改
IF 是修改
{
将主键控制为不可修改模式(enable=false)
}
ELSE
{//查看
将所有数据设置为不可修改模式(enable=false)
}
}
}
Event save()
1. 保存检测:数据完整性检测
一般将保存检测过程做成单独的窗体方法用来;保存检测要注意的时当检测不通过,提示用户修改,并将焦点定位到要修改的数据控件上;
2. 保存:提交数据到数据库
3. 回填数据到列表
* 将保存数据和刷新列表分开出来可以提高速度,特别是在B/S结构中
<未完待续...>
- 软件开发的基本内容(1)——数据采集
- 开发模块1——数据采集
- 最基本的网页爬虫(数据采集)
- 最基本的网页爬虫(数据采集)
- 机器人技术—基于DELPHI的数据采集与分析类上位机软件的编写
- 火车头采集器 当前网址内容采集 以及软件误标为已经采集的处理
- 数据采集系统的软件滤波[转]
- 数据采集相关软件
- 针对工控嵌入式智能仪表【数据采集客户端软件】开发(modbus协议)
- 数据采集器程序开发PDA软件开发定制盘点机条码采集系统软件
- 软件开发的基础内容
- CMS采集上载助手(自己编写的内容采集上载软件)
- 记一次WEB数据采集程序开发经历——对付简单的动态加载
- 《软件工程导论》——基本的软件开发过程模型
- 数据采集免费软件推荐:推荐一款免费的数据采集软件!
- 数据采集系统开发流程-1
- ftp数据采集的代码(一次性数据采集)
- PHP采集利器:根据开始字符串和结束字符串截取需要的采集内容数据
- SecureCRT下的批命令脚本
- Gnome Tetravex
- 今天是我第一次使用播客
- 实现了两个普通的队列,一个优先权队列
- 网上的一个面试题 (c#)(配有解答)
- 软件开发的基本内容(1)——数据采集
- 关于Windows与Linux的Weblogic组合开发
- 程序员的进化
- 关于SOA
- Problem H: Largest Rectangle in a Histogram
- attacker
- Java游戏编程初步 (附录部分有moveball的完整源代码)
- Programer ........程序员
- 一种判断市场潜力的方法