资源描述
辽 宁 工 业 大 学
JAVA程序设计 课程设计(论文)
题目: 电子词典
院(系): 软件学院
专业班级: 软件工程
学 号:
学生姓名:
指导老师: 王彦华
老师职称: 助 教
起止时间:.6.18至.7.1
程序设计专题(汇报)任务及评语
院(系):软件学院 教研室:软件教研室
学 号
学生姓名
专业班级
软件工程 班
程序设计(汇报)题目
电子词典
程序设计(汇报)任务
程序设计专题任务和要求:
(1)掌握Java编程、面向对象基础知识。
(2)较熟练地编写Java应用程序Application。
(3)了解Java常见标准类库、编程技巧、异常处理。
(5)联络已学过内容,巩固所学理论,增强独立工作能力。
(6)经过设计关键使学生有一个独立编写程序过程,对理论学习及动手能力全部有一个很大提升。
(7)经过此次设计,深入培养学生热爱专业思想,同时对本专业综合素质提升起一个主动推进作用。
课程设计过程中,要严格遵守实践步骤时间安排,听从指导老师指导。正确地完成上述内容,统计实习日志,规范完整地撰写出课程设计汇报。
指导老师评语及成绩
成绩: 指导老师签字:
年 月 日
目 录
第1章 课程设计目标和要求 1
1.1 课程设计目标 1
1.2 课程设计试验环境 1
1.3 课程设计预备知识 1
1.4 课程设计要求 1
第2章 课程设计内容 2
2.1 背景介绍 2
2.1.1 业务背景 2
2.1.2 技术背景 2
第3章 需求分析 3
3.1 现实状况分析 3
3.2 功效需求分析 3
3.2.1系统总体功效介绍 3
3.3 模块功效介绍 3
3.3.1主界面功效 3
3.3.2英译汉功效 3
3.3.3汉译英功效 3
3.3.4单词发音功效 4
3.4 数据库需求分析 4
3.5 系统数据步骤分析 4
3.6 数据项 6
第4章 系统设计 7
4.1 系统总体设计 7
4.1.1系统功效模块设计 7
4.2 系统具体设计 8
4.2.1概念设计 8
4.3 系统物理设计 9
第5章 系统实现 10
5.1 算法方面问题 10
5.2 字符串方面问题 10
5.3 系统实现 10
5.3.1主界面功效实现 10
5.3.2英译汉功效实现 12
5.3.3汉译英功效实现 13
第6章 课程设计总结 14
参考资料 15
第1章 课程设计目标和要求
1.1 课程设计目标
《JAVA程序设计》是计算机相关专业必修专业基础课程,其实践性、应用性很强。实践教学步骤是必不可少一个关键步骤。本课程程序设计专题实际是计算机相关专业学生学习完《JAVA程序设计》课程后,进行一次全方面综合训练,JAVA程序设计设计目标是加深对理论教学内容了解和掌握,使学生较系统地掌握程序设计及其在网络开发中广泛应用,基础方法及技巧,为学生综合利用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。
1.2 课程设计试验环境
硬件要求能运行Windows 9.X操作系统微机系统。JAVA程序设计语言及对应集成开发环境,J2SDK和ECLIPSE开发工具。
1.3 课程设计预备知识
熟悉JAVA语言及ECLIPSE开发工具。
1.4 课程设计要求
按课程设计指导书提供课题,要求学生在自行完成各个操作步骤,并能实现且达成举一反三目标,完成一个项目处理一类问题。要求学生能够全方面、深入了解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够很好地了解和掌握,能够进行简单分析和判定;能编写出含有良好风格程序;掌握JAVA程序设计基础技能和面向对象概念和方法;了解多线程、安全和网络等编程技术。同时培养学生进行分析问题、处理问题能力;培养学生进行设计分析、设计方法、设计操作和测试、设计过程观察、了解和归纳能力提升。
第2章 课程设计内容
2.1 背景介绍
2.1.1 业务背景
电子引词典是一个将传统印刷词典转成数码方法、进行快速查询数字学习工具。电脑辞典以轻便易携、查询快捷、功效丰富等特点,成为二十一世纪学生学习生活、社会人士移动办公掌上利器。电脑辞典关键有五大板块功效,分别为:辞典查询学习功效、电子记事功效、计算功效、参考资料功效和数据传输功效。现在市场上电子辞典内置辞典有学习词典如英汉、雅思等,也有专业词典如电子、医药等。不一样消费者应依据自己实际情况选择最适合自己电子辞典,标准电子辞典内置英汉、汉英、英英、雅思、托福等学习型词典,是为大学、高初中和小学生量身定制学习辞典。
2.1.2 技术背景
我们在学习英语时候会常常碰到很多生词,有时,为了读懂一篇文章,常常是读文章用一小时,不过其中却有半个小时全部在翻阅英语字典。所以我们小组为了处理这一问题,才将选材方向定在电子词典功效实现,关键目标就是为同学们处理这一问题。
在做电子词典功效实现时候,关键从以下多个方面入手,即:英汉互译、汉英互译、单词发音。
在英译汉、汉译英这两个功效模块上,我们首先提供了一个查询界面,即使用者需要输入要查询关键字,点击确定按钮,屏幕上就会出现其对应答案。在做这个模块时候,我们关键处理了JAVA和数据库链接问题,进而实现其功效。从系统可扩展性方面考虑,我们在系统中加入了对单词库添加、删除、修改功效。有了这个功效模块,将给使用者带来很大方便。
当然也存在一个情况,即刚开始接触而不知道怎样去使用电子词典,为此我们加入了帮助界面,帮助界面是用JAVA小程序完成。
第3章 需求分析
3.1 现实状况分析
当今时代是信息化时代,而信息数字化也越来越被大家所重视,所以,数字化技术关键性也逐步表现了出来,关键表现在以下多个方面:数字化是数字计算机基础,数字化是软件技术基础,是智能技术基础,数字化是信息社会技术基础,数字化是信息社会经济基础。
词典作为一个为大众服务工具书,已经逐步退居二线了,进而出现了另一个查找方法愈加简便,愈加正确,词汇量愈加丰富而且随身携带愈加方便工具,那就是电子词典,应该说这是一个新旧交替过程,电子词典替换传统词典只是时间问题。
所以说电子词典发展前景是明朗,电子词典生产厂家也如同雨后春笋般崛起了。
3.2 功效需求分析
3.2.1系统总体功效介绍
本系统在单词查阅方面关键完成了英译汉、汉译英、单词发音功效;在系统性能方面关键完成了单词库插入、修改、删除功效和帮助系统。
3.3 模块功效介绍
3.3.1主界面功效
该模块关键功效为:因为将组员所做各模块组合在一起。使用户能够在一个界面下调用组内组员功效模块。即放便用户使用又方便用户学习。而且不仅能够经过菜单栏调用各功效模块,还能够经过按钮调用。
主界面关键由两个面版,五个按钮,一个文本框,一个文本区,一个标签和一个菜单栏组成。在文本框中输入要查询数据。文本区中显示查询结果。
3.3.2英译汉功效
该模块关键功效为:当用记碰到陌生单词或记不清解释单词时,用户能够经过本功效查找,还经过本模块完成单词再一次记忆。
3.3.3汉译英功效
该模块关键功效为:当用户进行汉译英翻译时难难免碰到不会词或记不请记。这时用记就能够经过本功效实现词汇查找。它不仅能够查到想要查词还能够找到和该词相关单词。
3.3.4单词发音功效
该模块关键功效为:当用户进行英译汉查找时,想要知道单词发音时,就能够使用本功效模块。
3.4 数据库需求分析
现在电子词典应用很广泛,其体积小、价格低、实用性强,作为学习工具,有着很广泛市场。在以前,同学们学习英语时全部要用人工方法去查阅生词,不仅浪费了大量学习时间,学习效率无法提升。能够说,查阅英语生词成为了很多学习英语同学在学习方面瓶径。电子词典出现,就是针对这一问题。这里设计就是实现英汉互译、单词发音,为了表现它可扩展性,使用者也能够自己添加、删除或修改其单词库。
下面是数据库表设计:
表3.1 英语词汇表
字段名
字段类型
长度
备注
单词
TEXT
50
主键
解释
TEXT
50
3.5 系统数据步骤分析
数据步骤是数据采集、输入、处理、加工和输出全过程。信息原始数据经采集后,输入计算机系统,进行模式或统计运算,或按用户特殊要求编制某种专门程序来加工处理数据,然后输出结果数据。输出结果通常全部应说明或反应某一领域内客观事物自然属性特征和规律性。
系统分析关键任务是将在系统具体调查中所得到文档资料集中到一起,对组织内部整体管理情况和信息处理过程进行分析。它侧重于从业务全过程角度进行分析。分析关键内容是:业务和数据步骤是否通畅,是否合理;数据、业务过程和实现管理功效之间关系;老系统管理模式改革和新系统管理方法实现是否含有可行性等等。系统分析目标是将用户需求及其处理方法确定下来,这些需要确定结果包含:开发者相关现有组织管理情况了解;用户对信息系统功效需求;数据和业务步骤;管理功效和管理数据指标体系;新系统拟改动和新增管理模型等等。系统分析所确定内容是以后系统设计、系统实现基础。
分析电子词典总体情况,划分系统边界,识别系统数据起源和去处,确定外部实体,得出系统顶层数据步骤图;然后划分出多个关键信息管理功效,本系统关键数据工作流包含以下多个方面:
(1) 英汉词典;
(2) 汉英词典;
(3) 备份词库;
(4) 添加词汇;
(5) 修改词汇;
(6) 帮助;
明确各功效之间联络,绘制出数据步骤图,以下图所表示:
开始
帮助
输入英文单词
翻译
汉语解释
结束
图3.1 英译汉数据步骤图
开始
帮助
输入汉语词汇
翻译
英文单词
结束
图3.2 汉译英数据步骤图
3.6 数据项
数据项又称数据元素,数据项是组成数据最小单位,是数据统计中最基础、不可分有名数据单位。数据项能够是字母、数字或二者组合。经过数据类型(逻辑、数值、字符等)及数据长度来描述。数据项用来描述实体某种属性。
本系统数据项定义以下:
表3.2系统数据项定义
数据项名称
数据项含义说明
别名
数据类型
长度
取值范围
英文单词
用户需要输入英文单词
无
文本
50
英文字母
汉语词汇
用户需要输入汉语词汇
无
文本
50
汉字
添加单词
添加数据库中没有单词
无
文本
50
英文字母
修改注释
更新单词注释
无
文本
50
汉字,英文字母
数据结构定义
数据结构描述了一些数据项之间关系。一个数据结构能够由若干个数据项组成,也能够由若干个数据结构组成;还能够由若干个数据项和数据结构组成。
数据结构名称:英文单词
含义说明:用户需要输入英文单词
数据结构组成:由英文字母组成
数据结构名称:汉语词汇
含义说明:用户需要输入汉语词汇
数据结构组成:由汉字组成
数据结构名称:添加单词
含义说明:添加单词库中没有单词
数据结构组成:由英文字母组成
数据结构名称:修改注释
含义说明:更新单词注释
数据结构组成:由汉字和英文字母组成
第4章 系统设计
4.1 系统总体设计
4.1.1系统功效模块设计
系统模块设计分为3大项,分别是:文件模块,编辑模块和帮助模块。
1.文件模块:
文件模块分为4小项:汉译英模块,汉译英模块,备份词库模块,退出系统模块。
2.编辑模块:
编辑模块分为3小项:添加词汇模块,添加词汇模块,删除词汇模块。
3.编辑模块:
编辑模块分为2小项,分别是:帮助模块,相关模块。
下面是系统功效模块图:
电子词典
文件
编辑
帮助
英汉词典
汉英词典
备份词库
退出系统
添加词汇
修改词汇
删除词汇
帮助
相关
图4.1 系统功效模块图
4.2 系统具体设计
4.2.1概念设计
对用户要求描述现实世界,经过对其中住处分类、聚集和概括,建立抽象概念数据模型。这个概念模型应反应现实世界各部门信息结构、信息流动情况、信息间相互制约关系和各部门对信息储存、查询和加工要求等。所建立模型应避开数据库在计算机上具体实现细节,用一个抽象形式表示出来。
概念设计即是利用设计概念并以其为根本贯穿全部设计过程设计方法。概念设计是完整而全方面设计过程,它经过设计概念将设计者繁复感性和瞬间思维上升到统一理性思维从而完成整个设计。假如说概念设计是一篇文章,那么设计概念则是这篇文章专题思想。概念设计围绕设计概念而展开,设计概念则联络着概念设计方方面面。
下面是各模块E-R图:
文件
英译汉
汉译英
备份词库
退出
图4.2 文件模块子E-R图
编辑
添加词汇
修改词汇
删除词汇
图4.3 编辑模块子E-R图
帮助
帮助
相关
图4.4帮助模块子E-R图
4.3 系统物理设计
数据库物理设计阶段任务是依据具体计算机系统(硬件等)特点,为给定数据库模型确定合理存放结构和存取方法。所谓“合理”关键有两个含义:一个是要使设计出物理数据库占用较少存放空间,另一个对数据库操作含有尽可能高速度。
为了设计数据库物理结构,设计人员必需充足了解所用硬件内部特征;充足了解数据系统实际应用环境,尤其是数据应用处理频率和响应时间要求;充足了解外存放设备特征。数据库物理结构设计大致包含:确定数据存取方法、确定数据存放结构。
物理结构设计阶段实现是数据库系统内模式,它质量直接决定了整个系统性能。所以在确定数据库存放结构和存取方法之前,对数据库系统所支持事务要进行仔细分析,取得优化数据库物理设计参数。
对于数据库查询事务,需要得到以下信息:
1.要查询关系。
2.查询条件(即选择条件)所包含属性。
3.连接条件所包含属性。
4.查询投影属性。
对于数据更新事务,需要得到以下信息:
1.要更新关系。
2.每个关系上更新操作类型。
3.删除和修改操作所包含属性。
4.修改操作要更改属性值。
5.确定数据库存放结构。
6.确定系统存放参数配置。
第5章 系统实现
5.1 算法方面问题
起初连接数据库语句全部全部是在调用页一句一句书写,这么一来不仅做了很多反复工作,而且使页面看起来很繁琐,经过翻阅书籍发觉能够将连接数据库语句统一放到一个页面里,然后在需要调用连接数据库语句页面调用就能够了,这么既节省时间,又避免出现书写错误。
5.2 字符串方面问题
在测试数据查询模块时,发觉对字符串比较存在大小写之分,所以要先将要比较两个字符串转化成相同格式或强行限制输入字符串大小写相同,然后再进行比较;假如查询结果为空,那么应该给出提醒信息,这么才能真正做到人机界面友好。
5.3 系统实现
5.3.1主界面功效实现
在此模块内,用户假如想使用组内其它组员功效时,有两种实现方法。一个是在编辑菜单下选择添加词汇;另一个是经过主界面下面按钮调用其它组员功效模块。主界面关键由主界面关键由两个面版,五个按钮,一个文本框,一个文本区,一个标签和一个菜单栏组成。在文本框中输入要查询数据。文本区中显示查询结果。
关键方法包含:DataWindow()为结构方法,创建用户添加词汇界面;和actionPerformed()为接口方法,处理ActionEvent事件。下面是部分程序源代码:
import java.awt.*;
import .*;
import java.sql.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import sun.audio.*;
import javax.swing.JOptionPane;
class DataWindow extends JFrame implements ActionListener
{
JFrame topFrame;
JDesktopPane desktop;
FileDialog filedialog_save;//申明文件对话框
JTextField englishtext;
JTextArea chinesetext;
JButton b1,b2,b3,b4,b5;
JLabel label;
JMenuBar mbar;
JMenuItem edic,cdic,back_data,quit,addedit,modedit,deledit,disport_mine,gj,hhelp,about;
DataWindow()
{
super("电子词典");
this.setBounds(250,250,600,400);
this.setVisible(true);
getContentPane().add(new JScrollPane(chinesetext));
mbar=new JMenuBar();
setJMenuBar(mbar);
mbar.setOpaque(true);
mfile=new JMenu("文件");
medit=new JMenu("编辑");
mhelp=new JMenu("帮助");
mbar.add(mfile);mbar.add(medit);mbar.add(disport);mbar.add(mhelp);//添加菜单项
edic=new JMenuItem("英汉词典");
cdic=new JMenuItem("汉英词典");
back_data=new JMenuItem("备份词库");
quit=new JMenuItem("退出");//文本菜单
addedit=new JMenuItem("添加词汇");
modedit=new JMenuItem("修改词汇");
deledit=new JMenuItem("删除词汇");
hhelp=new JMenuItem("帮助");
about=new JMenuItem("相关...");//帮助菜单
图5.1主界面图
5.3.2英译汉功效实现
此功效模块关键是针对已经存在于单词库中单词,经过编辑菜单中英汉词典功效,在主界面文本框中输入要查询单词,单击查询按钮进行查询。结果显示在主界面文本区中。
下面是部分源代码
//假如是调用语音文件,则读出单词
else if(e.getSource()==b5)
{
if(englishtext.getText()!=null)
{
try
{//去该单词为语音文件名
InputStream is=getClass().getResource("sound//"+
englishtext.getText().trim()+".wav").openStream();
//播放语音文件
AudioPlayer.player.start(is);
}
catch(IOException e1){}
}
}
else if(e.getSource()==edic)//英汉
{
label.setText("输入要查询英语单词:");
b1.setVisible(true);
b5.setVisible(true);
}
else if(e.getSource()==back_data)//备份
{saveWin s=new saveWin();
}
else if(e.getSource()==quit)//退出
{
System.exit(0);
}
图5.2英译汉界面图
5.3.3汉译英功效实现
下面是部分源代码:
//假如是调用语音文件,则读出单词
else if(e.getSource()==b5)
{
if(englishtext.getText()!=null)
{
try
{//去该单词为语音文件名
InputStream is=getClass().getResource("sound//"+
englishtext.getText().trim()+".wav").openStream();
//播放语音文件
AudioPlayer.player.start(is);
}
catch(IOException e1){}
}
}
else if(e.getSource()==edic)//汉英
{
label.setText("输入要查询汉语意思:");
b1.setVisible(true);
b5.setVisible(true); }
else if(e.getSource()==back_data)//备份
{saveWin s=new saveWin();
}
else if(e.getSource()==quit)//退出
{
System.exit(0);
}
图5.3汉译英界面图
第6章 课程设计总结
经过了两个星期时间,利用Java开发电子词典程序最终完成了。本程序是针对其相关企业现实状况分析以后,确定了程序包含领域,包含了界面设计、功效设计、数据库设计等,是一个含有实际应用意义程序。
经过这次课题设计和实现,尽管碰到了很多很多难题,不过让我让我愈加受益是在这次课程设计中得到经验、心得和锻炼。这让我发觉编译程序过程其实就是不停处理问题过程,从中也感受到了编写软件乐趣,一个人永远有学不完知识,就算开发软件各项知识全部学会了,但在实际开发过程中仍然会碰到不少问题,这是就要做到以下这两点:一个是“查”,另一个则是“问”。经过仔细查阅资料和问询老师和同学,最终处理了不少问题。这也是使我认识四处理问题首先依靠外界帮助,更关键是依靠自己能力。这次课程设计给我以前学过知识做了一个总结,为我深入学习编程做了铺垫。
因为时间和其它方面原因,我设计程序只完成了多个关键功效实现,仍然存在着不少问题和缺点,比如说:用户界面设计不够美观,异常犯错处理功效比较差等多方面问题,这还需要在以后学习中加以改善,期望以后能够做更成功。
参考资料
1. 陈明 JAVA学教程 科技出版社 -3
2. 飞思科技产品研发中心 JAVA应用开发 电子工业出版社 -5
3. 方力钧 JAVA高手突破 清华大学出版社 -08
4. 乔林 JAVA应用技术 中国铁道出版社 -12
5. 张立科 实用JAVA应用学 人民邮电出版社 -09
6. 严蔚敏 JAVA第二版 清华大学出版社 -07
7. 王珍玲 实用JAVA工程教程 高等教育出版社 -06
8. 李维 面向对象开发实践之路 电子工业出版社 -04
9. 谭浩强 JAVA程序设计第二版 清华大学出版社 -02
10. 周苏 JAVA工程学教程 科学出版社 -11
展开阅读全文