毕业设计论文-家庭记账系统的设计与实现内容摘要:
大量的企业组件。 面向 对象的程序设计介绍 传统的 结构化程序设计 (Structured Programming)是一种强调功能抽象化和模块化的编程方法,它把解决问题的过程看作是一个处理单位。 这就是说结构化程序设计中,模块是对功能的抽象,而每一个模块都是一个处理单位,并有输入和输出。 而面向对象的程序设计 (Object Oriented Programming, OOP)是一种以对象为基础,以事件来驱动对象执行的程序设计技术。 OOP 把计算过程看作为对象的分类过程加上其状态变化的过程,也就是将一个应用程序逐步划分成相互关联的多个对象,并且建立起与这些对象相互 关联的事件过程,通过对象对所发生的事件产生响应,并执行相应的事件过程以引发对象状态的改变,从而最终达到完成计算的目的。 与结构化程序设计不同,面向对象的程序设计综合了功能的抽象和数据的抽象,它把解决问题的过程看作是一个对象分类演绎的过程。 在 OOP 中,对象 (Object)是一个包括数据和方法 (操作 )的并被封装起来的整体,它是对数据和功能的抽象和统一,而对象就包含了模块的概念。 面向对象设计是一种全新的程序设计方法,它从根本上改变了传统的程序设计模式。 其基本思想是:通过建立与具体实际应用相对应的对象,并通过这 些对象的组合来创建具体的应用程序。 这种设计方法给程序设计带来了许多良好特性,一般说来有以下几点: ( 1) 模块性:对象是一个功能和数据独立的单元,它们之间只能通过对象认可的方式来进行通信,并可以较为自由地为其他对象所调用。 ( 2) 封装性:这一特性为信息的隐藏提供了具体的实现手段,用户不必清楚对象内部的细节,只需了解其功能即可。 ( 3) 继承性:这一特性为代码的共享提供了一种非常有效的方法,从而可以避免重复的代码设计,实现对象的可重用性。 这一特性也是面向对象程序设计技术最本质的特征。 ( 4) 可靠性:对象实现了抽象和封装,从而使得其中出现的错误限制在对象的内部,因而不会向外部传播,同时也易于检查和维护。 ( 5) 可扩充性:面向对象系统可以通过继承机制不断扩充其对象的功能,而不会影响原系统的运行。 ( 6) 连续性:虽然面向对象的程序设计语言在编程模式上相差很大,但它并没有摒弃传统的做法,它不仅采用了传统程序设计语言的语言元素,而且利用它们来模拟建立对象,从而使得一个熟悉传统程序设计语言的编程者能够很快掌握面向对象设计的规律。 系统开发理论介绍 软件的生命周期指从提出软 件产品开始,直到该软件产品被淘汰的全过程。 信息系统在使用过程中随着其生存环境的变化,要不断维护、修改,当它不再适应的时候就要被淘汰,就要有新系统代替老系统,这种周期循环称为信息系统的生命周期。 信息系统的生命周期可以分为系统规划、系统分析、系统设计、系统实施、系统运行和维护等五个阶段。 开发设计思想 ① 尽量采用学校现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用学校现有资源,提高系统开发水平和应用效果的目的; ② 系统应符合家庭收支情况的有关事项,满足对家庭日常管理的需要,并达到操作过程 中的直观、方便、实用、安全等要求; ③ 系统采用模块化程序设计方法,便于系统的各个组合和个性,也便于未参加开发的技术维护人员补充和维护; ④ 系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等超作。 运行环境 ①硬件环境 PC 机一台。 ②操作系统 Microsoft Windows XP Professional sp3 ③软件环境 数据库 : Microsoft SQL Server 2020 开发工具: Delphi 7 3 系统 概要设计 系统数据流图 根据以上分析,现以用户收支管理模块为例具体设计系统数据流图,如图所示。 图 4 系统总体数据流 图 5 用户收支管理的总体数据流 系统结构设计和工作原理 根据面向对象的设计思想,可以得出如下系统结构功能设计和工作原理,如图所示。 用户收支信息 用户收支信息 用 户 收支管理 系统 用户收支信息 用户收支信息 用 户 收支信息 管理 图 6 系统结构功能设 计 图 7 工作原理 数据库设计 数据库是系统信息的有效中心,一个优秀的数据库设计应考虑到系统工程的功能,系统的执行速度,以及是否可能引起系统工作的异常等。 数据库的设计合理与否不仅直接影响到程序设计的质量,而且影响到系统的实现。 在 SQL Server中创建表格 中文 SQL Server 2020 提供了两种创建表的方法:创建用于输入数据的 “空表 ”;使用其他数据源中已有的数据来创建表。 使用 “数据库向导 ”即可在 建立数据库的操作中创建该数据库所需的全部表、窗体及报表。 也许您会想到这与使用中文 Visual FoxPro 6 中的 “项目管理家庭记账系统 用 户 设 置 收 支 登 记 收 支 查 询 收 支 统 计 事 件 提 醒 注 册 用 户 修 改 密 码 收 入 登 记 支 出 登 记 收 入 查 询 支 出 查 询 收 入 统 计 支 出 统 计 特殊事件提醒设置 返回查询结果 组织 SQL 语句, 查询数据库 给出用户名和密码 要查看收支信息 返回用户对象, 内部有用户收支信息 数据库 用户 收支 管理 组件 用户收支管理系统操作界面 器 ”相类似,其实它们的功能差别还是很明显的,这里的 “数据库向导 ”能创建新的数据库,但不能将新表、窗体或报表添加到已有的数据库中。 在 “客户 ”表中,中文 SQL Server 2020 的 “数据库向导 ”已经建立好了所需要的字段,并且允许您此后为这些字段输入记录,如果需要的话还能增加新的字段,删除多余的字段。 如下表介绍: (1) 表 1 是用来说明本系统的用户和密码的存储情况,用户 和密码均 不能为空 ; 表 1 用户密码 (2) 表 2 主要是说明本系统收入信息存储数据的格式,日期要为日期数据类型 (自动获取系统时间); 表 2 收支 信息 ( 3)表 3 主要记录了需要进行提醒的事件相关信息。 表 3 事件提醒信息 4 系统的详细 设计 4. 1 具体功能模块的详细设计 初始界面 程序一被运行即显示此界面,用户可以选择登陆或者注册。 核心代码: procedure (Sender: TObject)。 begin。 end。 procedure (Sender: TObject)。 begin。 end。 //procedure (Sender: TObject)。 //begin //。 //。 //。 //end。 procedure (Sender: TObject)。 var sql : string。 // i:integer。 strStartDate:string。 strEndDate:string。 begin strStartDate:=DateTostr(now())。 strEndDate:=DateTostr(now()+7 )。 sql:=39。 select * from dt where date_time= 39。 39。 39。 +strStartDate +39。 39。 39。 and date_time= 39。 39。 39。 +strEndDate +39。 39。 39。 39。 (sql)。 while not() do begin sql:=Trim((39。 date_time39。 ).AsString)+ 39。 : 39。 + Trim((39。 dt_name39。 ).AsString)。 end。 // := IntToStr(i)。 //:=Trim((39。 user_name39。 ).AsString)。 strDT :=sql。 end。 end. 用户注册界面 新用户通过这个窗口注册。 先输入想使用的用户名,并点“用户名检测”检测是否已经存在该用户名,如果不存在,则可用,“注册”按钮变为可用。 核心代码: procedure (Sender: TObject)。 begin close。 end。 procedure (Sender: TObject)。 var sql:String。 //i:Integer。 begin sql:=39。 insert into user_info values(39。 39。 39。 ++39。 39。 39。 ,39。 39。 39。 ++39。 39。 39。 )39。 (sql)。 ShowMessage(39。 注册成功 !39。 )。 := False。 end。 procedure (Sender: TObject)。 var //strUser_password:String。 i:Integer。 begin :=39。 select * from user_info where user_name=39。 39。 39。 + + 39。 39。 39。 39。 i:=。 if i =0 then //用户名不存在,可以注册 begin ShowMessage(39。 用户名不存在,可以注册 !39。 )。 := True。 end else begin ShowMessage(39。 该用户名已经存在,请选择其它用户名 !39。 )。 := false。 end。 end。 end. 登陆界面 已注册用户通过此窗口登陆。 输入正确的用户名和密 码。 核心代码: procedure (Sender: TObject)。 var //strUser_password:String。 i:Integer。 begin :=39。 select * from user_info where user_name=39。 39。 39。 + + 39。 39。 39。 and user_password=39。 39。 39。 + + 39。 39。 39。 39。 i:=。 if i 0 then begin ShowMessage(39。 成功登录 !39。 )。 end else ShowMessage(39。 输入有误 !39。 )。 end。 procedure (Sender: TObject)。 begin close。 end。 end. 程序主界面 正确登陆后出现此窗口,可以选择想进行的操作,点击对应按钮即可。 设置的提醒事件显示在该窗口下方。 核心代码: procedure (Sender: TObject)。 begin。毕业设计论文-家庭记账系统的设计与实现
相关推荐
级护理 □普食 □中药辨证施治 □治疗仪治疗(必要时) 临时医嘱 □对异常检查结果进行评估,必要时复查 长期医嘱 □骨伤科常规护理 □分级护理 □普食(或臂麻后 6小时普食) □中药辨证施治 □术后应用抗生素 3天 □治疗仪治疗(必要时) 临时医嘱 □通知闭合穿针术 □术前备皮和术前针 □术中透视 □复查 X线片、血细胞分析(必要时) □其他: 主要 护理 工作 □入院介绍 □入院健康教育
计算机综合自动化系统技术规范书 18 ( 4)系统配置和设备选型适应计算机发展迅速的特点,具有先进性和向上兼容性;软件采用模块化、结构化设计,保证系统的可扩性,满足功能增加及规模扩充的需要。 ( 5)全分布开放式系统,既便于功能和硬件的扩充,又能充分保护用户的投资。 分布式数据库及软件模块化、结构化的设计,使系统能适应功能的增加和规模的扩充。 ( 6)实时性好,抗干扰能力强,适应现场环境。 (
9],单总线独特而其经济的特点,使用户可以轻松的组建传感器网络,为测量系统的构建引入全新概念。 新一代的DS18B20 体积更小,更经济、更灵活,而其由于芯片输出的是数字信号,省去外部 A/D 转换,简化硬件电路。 其特性如下: ( 1)独特的单线接口方式,只需一个接口引脚即可通信; ( 2)每一个 DS18B20 都有一个唯一的 64位 ROM 序列码; ( 3)在使用中不需要任何外围元件;
1、农业技术全集之植,、棉花肥料总投放量高纬度次宜棉区单产籽棉 300克,需要投放自然肥 70克,折合标肥 160克。 达到“斤肥斤棉”。 投放 1 千克标准肥,可产 1 千克皮棉。 137 团土壤化验结果和棉花植株营养诊断普遍缺锌,秋施 1克锌肥,增产幅度在 5%对化验结果含钾丰富的地块,钾肥的施用在 5克,尤其是含钾在 180克/千克以下的地块,仍然可以增产
的电气性能而 LED的光输出直接与 LED电流相关所以 LED驱动电路在输入电压和环境温度等因素发生变动的情况下最好能控制 LED电流的大小否则 LED的光输出将随输入电压和温度等因素变化而变化并且若 LED电流失控 LED长期工作在大电流下将影响 LED 的可靠性和寿命并有可能失效 LED Light Emitting Diode 图 310 单基色 88 的点阵屏内部结构图 图 311
农业技术全集之植,花在生长发育过程中,由于病虫草害种类多、为害大,需要反复、多次进行药剂防治;一旦施药不当,很容易对棉花造成药害,轻则影响生长发育,严重时植株变态甚至死亡。 棉花发生药害后的补救措施是:(1)喷水淋洗。 多数化学药剂都不耐水冲刷,如果发现用药不当,可立即用喷雾器装满清水对着茎叶反复喷洗,以冲去残留在棉株表面的药剂,减轻药害;冲洗时,喷雾器的气压要足,喷洒的水量要大。