基于android平台的韩语单词记忆软件毕业论文(编辑修改稿)内容摘要:

对于服务器端,参与者是系统管理员。 数据库管理员。 系统管理员管理软件更新, 服务器维护,手机客户端和服务器端通信维护,系统所有用户管理。 如图22。 数据库管理员负责学习者用户管理,学习资料管理, 数据库系统管理,如图 23。 在设计服务器端时是根据下图来设计主要功能的,同时分配不同角色的职责,管理权限。 图 22 系统管理员用例图 图 23 数据库管理员用例图 2. 系统活动图 活动图( activity diagram,动态图)是阐明了业务 用例 实现的工作流程。 业务工作流程说明 了业务为向所服务的业务主角提供其所需的价值而必须完成的工作。 【 2】 手机客户端 与用户交互 时。 主要活动如图 24。 在该活动图中把用户和手机端作为一个整体看待,这个整体在 一个 学习 周期 里 所产生的活动。 图 24 手机端活动图 服务器端接受到用户请求会响应相应动作。 如图 25 所示。 该图主要展示用户登录时对服务器来说会产生的活动,根据不同活动会返回不同数据。 图 25 服务器端活动图 三、系统设计 (一) 总体结构图 系统结构图反映的是系统中模块的调用关系和层次关系 ,谁调用谁 ,有一个先后次序 (时序 )关系 .【 3】 在该 基于 Android 平台的软件开发时采用了 C/S 架构 设计。 其整体系统结构图如图 31。 如图中所示,手机客户端是直接和服务器通信的。 这样能够减轻服务器运行时传输的数据负荷。 对于客户端的响应时间也相对与 B/S 架构快速。 因为考虑到实际情况,和只在单一的 Android 平台开发客户端。 故采取这种形式是比较符合实际的。 图 31 系统整体结构图 (二)子系统设计 1. 手机端功能设计 手机端功能设计 包括 注册登录模块,同步模块,学习资料管理模块,注册资料管理模块,软件设置模块和学习模块。 如图 32 所示。 图 32 手机端功能模块图 2. 服务器端功能模块图 服务器端功能设计包括系统用户管理模块,学习资料管理模块,学习用户管理模块,连接通信管理模块,日志管理模块 ,软件管理模块。 如图 33 所示。 图 33 服务器功能模块图 (三) 类设计 手机客户端所用类 初始注册登录界面类 LoginAndRegisterActivity, 学习类是 LearnActivity,主界面类是 MainActivity, 个人资料类是 SelfData,SD 卡操作和文件读写类 是GetSDCardInfoAndFileOperation, 如图 34。 其中列出了主要的类成员变量和成员方法。 图 34 手机端设计类图 主要成员变量和方法说明。 LoginAndRegisterActivity 中。 User_name:用户名。 User_password:登录密码。 User_用户邮箱,当用户初次注册时使用。 onCreate()方法 :初始手机客户端,初始数据。 onClickLoginButton()方法: 用户选择登录,切换到登录界面。 onClickRegisterButton()方法:用户选择注册,切换到注册界面。 onClickConfirmButton()方法:用户选择了确认注册或登录,完成相关操作。 MainActivity 中。 dataName:用户当前学习的 单词包名。 packageName:用户当前学习的阶段包名。 currentWord:记录用户当前学习到的单词位置。 selfData:用户个人相关数据类的实例,存储有个人用户数据,方便 操作。 onCreate()方法:读取相关信息,初始化主界面。 onClick()方法:接收用户在主界面上的点击事件,根据不同控件做出不同响应。 onClickStartLearnButton()方法:用户点击开始学习按钮后,初始化学习界面,开始学习。 initialCurrentStudyView()方法:初始化用户学习进度相关信息并显示。 LearnActivity 中。 dataName:用户当前学习的单词包名。 packageName:用户当前学习的阶段包名。 currentWord:记录用户当前学习到的单词位置。 audiofileStrArray:存放 学习资料音频文件名。 wordsfileStrArray:存放学习资料文本文件名。 minNumber:用户学习阶段,所有单词的最小编号。 maxNumber:用户学习阶段,所有单词的最大编号。 mediaPlayer:当前正在学习的单词的音频播放实例,根据不同的单词更换不同的音频源。 onCreate()方法: 根据学习进度初始化学习界面。 updateMediaPlayer()方法: 根据学习单词不同,更替音频源。 initialWordsInfo()方法:初始化学习资料,将单词存放的文本和音频文件名等信息加载进内存中,并且创建六个 HashMap,分别用键值对方式存放单词音频文件名,单词韩语文本,汉语文本,韩语例句文本,汉语例句翻译。 randomSetTextToButton()方法:从 HashMap 中取出韩语或汉语文本,然后随机设置进四个 Button 按钮中,供用户选择。 GetSDCardInfoAndFileOperation 中。 filePath:学习资料 文件存储路径。 sdCardPath:sd 卡的绝对路径。 getSDCardPath()方法 :因为 Android 系统中,不同的手机中, SD Card 路径可 能不一样,所以用该方法得到当前的手机中的 SD Card 路径。 fileIsExists()方法 :判断目标文件或文件夹是否存在。 getFileList()方法 :得到指定文件夹中的所有文件 ,返回类型为文件。 fileArrray()方法 :得到指定文件夹中所有文件,返回类型为文件名。 writeFile()方法 :将指定字符串写入文件。 readFile()方法:从指定文件读取内容。 SelfData 中: mContext:程序的上下文,用于得到存储在手机中的 SharedPreferences 中的配置信息。 SelfData()方法:类的构造函数,初始化所有成员变量,并赋值。 getUserData()方法:返回所有的用户数据。 (四)数据库设计 1. 学习 用户资料表 设计 设计用户表 (UserDataTable),便 于 对学习用户进行管理。 如下表 35。 表 35 用户资料表 名称 类型 是否为空 备注 User_name nvarchar(20) Not null 用户名 User_password nvarchar(20) Not null 密码,加密存储 User_gender Nvarchar(2) Not null 用户性别 User_id int Not null 用户识别码 User_Regist_time date Not null 注册时间 User_ nvarchar(30) Not null 用户邮箱 User_qq nvarchar(20) null 用户 号码 User_wechat nvarchar(30) null 用户微信号码 User_phone nvarchar(30) null 用户电话号码 User_Remembered_word int Not null 记住单词数 User_Current_word int Not null 当前记忆单词位置 User_Current_package nvarchar(10) Not null 当期阶段学习包 User_Self_Introduce Nvarchar(100) null 自我介绍 User_Current_rank Int Not null 目前排名 User_other Nvarchar(100) null 用户备注 表 关键 字段详细说明: User_name:用户名,相当于用户昵称, 可以更改, 但是要求是唯一的。 但在系统内部是用 User_id 来唯一表示用户的。 User_password:用户密码,对密码强度没有规定,用户可根据自己喜好设置密码强度。 User_id:用户标识码,在系统内部唯一标识用户的,从用户注册后就不可更改。 该字段是用于更方便 管理用户信息,在表之间建立联系的。 User_Current_word:用户当前记住的单词在总的计划中的位置标号。 因为所有单词是按照记忆曲线方式重复排序的。 所以每个单词是重复出现多。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。