备的系统的特定特性,如性能、安全性、可用性、可扩展性等等,二者互为影响[8]。本小节阐述文本编辑软件的需求分析,主要是从功能需求方面阐述。
本文完成的文本编辑器软件主要是针对电脑初学者,帮助电脑初学者用户掌握编辑文本的简单的操作。
需求分析的任务是确定功能必须完成的工作,也就是对目标系统提出完整、准确、清晰、具体的要求。需求开发是为研发出符合用户需求的产品而进行的需求收集分析和确定研发内容活动过程。需求分析的任务是发现问题域并求精的过程,当在需求可以被分析之前,必须通过一个诱导过程来收集客户需求。需求获取的主要目标是在开发之前更好的理解要解决的问题。在经过多方了解和研究之后,基本上清楚了此文本编辑器的功能需求。
根据此文本编辑器的的实际要求,应具有以下几个方面的功能需求:
1.文本新建功能:文本编辑器清空文本区,重新分配新的内存空间。在运行该编辑器时,可以直接编辑默认的新建文件,在左边的树中正在编辑的文件显示有File1,右边的文件文本域所在的Tab标签上显示的也是file1.txt。
2.文本打开功能:指定打开本地计算机上的文本文件,打开之后放在另一个文本区中,在左边的树中正在编辑的文件显示有打开文本的文本名,右边的文件文本域所在的Tab标签上显示的也是当前的文本名。
3.文本保存功能:保存文本文件到指定的地方,保存后的文本格式可以为"*.java ,*.html,*.cpp,*.txt"。
4.全选功能:可以对当前正在进行编辑的文本进行全选功能,提高效率。
5.字符串查询功能:在当前文件中查找字符串,在弹出的对话框中输入所要查找的字符串,点击确定开始查找,找到后显示高亮。并且能够查找下一个所要查询的内容。
6.替换功能:可以对查找到的所有内容都能够进行替换。
7.退出功能:退出文本编辑器,释放内存。
8.复制功能:选中文字,复制到后台。
9.字体设置功能:可以改变文本区中被选定的文字的字体的大小和样式。
10.剪切功能:选中文字,剪贴到后台。
11.粘贴功能:将复制或剪切的文字,粘贴到指定的位置。
12.代码运行功能:将编译好的代码,运行出结果。如果运行错误,显示出错原因。
13.代码编译功能:连接本地计算上的Java虚拟机,对编写的代码进行编译,如果编译错误,会显示错在第几行;如果编译没有错误,则显示编译成功。
文本编辑软件的界面要求操作简单,要求在窗口顶部设有菜单栏,分别有文件,操作,演示,格式,编辑和帮助;要求在菜单栏下面设有工具栏,分别有打开按钮,新建按钮,保存按钮,退出按钮,查找按钮,查找下一个按钮,替换按钮,设置字体按钮,复制按钮,剪切按钮,粘贴按钮,帮助按钮;要求在文本编辑器右边的文本域用于编辑文本,右边中间的文本域用于显示光标的行号,右边下面的文本域是显示编译和运行信息;要求界面的文本区域可以随意调节大小。
系统用例图如图3-1所示。系统用例图描述如表3-1所示。
3.2 系统类设计
软件类设计是软件系统中的核心元素,是构建软件系统中其他部分所依赖的基础。类的设计指的是系统各个组成部分协同工作的方式的连接。软件的各个组成部分正是通过类之间所描绘的方式进行协同工作,共同完成软件的功能,最终向外界表现出一个完整的软件。因此,软件类的设计的好坏会从根本上决定基于这个架构所构建的软件系统的质量。总的来说,类的的构建一直是软件开发过程中的一项重要工作。文本编辑软件中类与方法的使用如表3-2所示:
自定义的SimpleEditor类是文本编辑器的主类,继承JFrame类。SimpleEditor是构造函数;init方法初始化编辑器上的所有控件;inithelp方法初始化帮助信息,以表格的形式显示文本编辑器的快捷键的信息;exitEditor方法退出文本编辑器。
图3-1 系统用例图
自定义的键盘事件类MyKeyListener继承KeyAdapter类,重写父类的keyPressed方法,处理键盘被按下时的事件。
自定义的文件选择器FileChooser类继承JFileChooser类。approveSelection方法实现文件的选择;getSelectedFile方法获得被选中的文件;getCurrentDirectory方法获得被选择文件所在的目录;setSelectedIndex方法将新页设为当前页; append方法把内容添加到文本域中;write方法将文件的文本域中的内容保存到文件;cancelSelection方法处理关闭文件选择器事件;dispose方法将文件选择器窗口关闭。
自定义的文件过滤器类Filter继承FileFilter类,重写父类的accept方法。accept方法决定是否允许文件通过文件过滤器;getDescription方法获得文件选择器的描述。
自定义的获取当前光标所在行号CaretLis_line类实现了CaretListener的接口,显示当前编辑文本的光标行号。caretUpdat方法实现文本组件的插入点改变;getCaretPosition方法获得文本域中光标插入点的位置;getLineOfOffset方法,能够获得插入点所在的行号。
自定义的鼠标事件类MouseListener_console继承MouseAdapter类。mouseClicked方法实现鼠标在控制台文本域中被单击;getCaretPosition方法获得插入点的位置,通过getLineOfOffset方法获得插入点所在的行号。
自定义的窗口事件监听器WindowListener类继承WindowAdapter类,windowClosing方法实现处理关闭窗口事件。
自定义的切换tab事件类ChangeTab实现ChangeListener接口。stateChanged方法实现切换JTabbedPane的页时出发该类事件;getSelectedIndex方法获得被选择页的索引,并将它设置为当前操作页的索引。
自定义的Act_NewFile类实现ActionListener接口,是新建功能事件的监听器。add方法实现更新tab页功能;setRightComponent方法将组件设置在分割条的右边;setDividerLocation方法实现设置分隔条的坐标;setSelectedIndex方法实现设置选择页面的编号;addTab方法实现添加一个新的Tab页;remove方法实现更新树的功能。
表3-1 系统用例图描述表
用例编号 UCEDITOR001 用例名称 文本编辑器的基本操作 用例概述 用户对文本编辑器进行基本操作,实现文本编辑器的使用 范围 用户 项目相关人
利益说明 项目相关人 利益 用户 进行文本编辑的操作 前置条件 成功打开文本编辑器 后置条件 对文件进行操作,关闭文本编辑器 成功保证 用户对文本编辑文件操作成功 基本事件流 步骤 活动 1 本地文件操作 2 编辑操作 扩张事件流 1a 打开本地文件,保存到本地文件 2a 对编辑的文本进行全选,设置字体,复制,剪切,粘贴,查找字符串和替换功能 子事件流 无 规则与约束 用户打开文本编辑器,对文件进行正确操作 自定义的Act_OpenFile类实现ActionListener接口,是打开功能事件的监听器。setVisible方法实现设置打开的界面是否可见的功能;setTile方法实现设置打开界面标题的功能;setSize方法实现设置打开界面尺寸的功能;getContentPane方法实现初始化一个容器,在容器上添加一些控件的功能。
自定义的Act_SaveFile类实现ActionListener接口,是保存功能事件的监听器。setTitle方法实现输入保存文件名的提示功能;close方法实现对已存在的文件,直接保存的功能;add方法实现添加控件的功能;showMessageDialog方法实现信息提示对话框的功能;getTitleAt方法实现得到保存文件名的功能。
自定义的Act_Find类实现ActionListener接口,是查找功能事件的监听器。requestFocues实
上一篇:
山东理工大学论文中期答辩模板
下一篇:
计算机网络毕业论文