1. 研究目的与意义、国内外研究现状(文献综述)
1 课题意义全世界75%的电视节目是英语,3/4的邮件是用英文书写,许多国际场合使用英语作为基本沟通媒介,英语也是联合国的正式工作语言。同时,英语与计算机联系密切,大多数编程语言都以英语作为基础。各大企业在招聘人才时也将英语水平作为衡量标准之一。为了培养学生的英文能力,我国在义务教育阶段就开始进行英语课程的学习,从小学、初中、高中到大学的各个阶段都在学习英语,现在,几乎每一个本科毕业生都具有10年以上的英语学习史。在这样的市场需求下,英语显得格外重要。
英文学习包括听、说、读、写等几个方面。学习一门新语言,基础就是单词。几乎每个英文单词都有几个不同的意思,如果不进行复习,久而久之一些不经常使用的单词就会忘却,因此单词需要不断的巩固。以前人们用最简单的辞典,在众多的资料中翻阅、查找,这种方法费时又费力,而且应用性比较差,携带及其不方便。设计一个英语单词学习系统,可以使得用户能够便捷、快速地进行英语单词的学习和巩固。基于android的英语单词学习程序的设计可以进一步扩大学习英语的途径,用户可以充分应用他们的碎片时间,进行一些与电子设备交互的学习事件。将携带性和使用性同步,使用约束最小化,用户随时随地进行单词的学习,从而提高学习兴趣以及学习效率。
2 国内外研究进展
2. 研究的基本内容和问题
(1)android应用开发过程中的技术问题;
(2)系统的功能模块和界面设计;
(3)单词数据库的访问及单词的真人发音。
3. 研究的方法与方案
1 研究方法
本系统主要采用软件工程法进行实验。运用常规的软件设计流程,通过需求分析、概要设计、详细设计、编码、测试、调试等步骤进行研究。该系统采用Linux内核作为底层架构,拟采用Java语言开发,以SDK作为开发环境,数据库使用Linux系统支持的SQLite。系统以MVC进行架构,整体结构分为数据层、业务层以及表现层。数据访问层作为系统的基础底层支柱,系统运行时的基础数据存储到数据库中,业务逻辑层将系统的核心功能学习、复习、测试、添加生词等模块进行处理,表现层则有Android移动设备进行访问使用。
2 技术路线
(1)采用SAX解析XML
在Android开发中离不开可扩展标记语言(XML,eXtensible Markup Language)。XML用来标记数据、定义数据类型,用XML语言描述用户界面,相关布局等。解析XML就是将文档中的元素的数据内容提取出来,构建后可以进行相应的操作。XML的解析就是实现文档里的相关程序。Android里主要有三种解析技术,其中用于处理XML事件驱动的推模型(SAX,Simple API for XML)得到了广泛的认可,它不需要建立完整的文档树,只需在读取文档时激活这些事件串。这些事件串被推给事件处理器,然后处理器对该内容进行访问。SAX解析支持XML文件的读取,不支持写入,速度快,占用内存小所以适合用在手机和移动设备上,因此选用SAX解析XML。
(2)TTS机器语言合成技术实现单词发音
语音合成技术(TTS,Text to Speech)是让机器说话的一种技术,在语音系统开发中经常用到。约有10万单词和5000多个语法规则,能将文字自动分析转化成合成音,可以听到文本发音。Android系统支持这个技术,主要支持英语、法语、德语、意大利语和西班牙语等,可以随意转化成以上五种语音的输入。TTS引擎对于资源采取预加载的方法,根据一系列的参数从库中提取相应的资源加载到当前系统中。在单词学习系统中可以运用TTS语音合成技术让单词发音。
(3)SQLite数据库
SQLite是Android操作系统自带的一个标准的数据库,支持SQL语句,它不是服务系而是放在应用程序里使用的比较轻量级的数据库,对于中小型规模的工程有速度较快的特点。SQLite占用资源非常少,且支持Linux操作系统。Android不会自动提供数据库,必须首先创建数据库然后建表,填充数据,可以继承SQLiteOpenHelper类来创建一个数据库,这个类根据程序的需要调用子类,这样就可以从数据库中调用所需要的数据。
(4)UI元素与布局设计
在Android应用程序中,一个界面对应一个Activity,但界面的实现是通过View实现的,View的种类有很多,如Button、TextView、ImageView、ListView等,他们都继承自Android.view.View类。在Android中布局通常有框架布局、线性布局、绝对布局、相对布局、表格布局等方式。
3 实验方案
(1)理论与技术学习
通过知网、百度、谷歌、知乎等搜索引擎与网站,了解实现该系统所需要涉及的相关知识与技术,对Android应用的开发有一个基础的掌握。深入研究经典教程、期刊、论文等有关Android技术开发有关的内容,熟悉开发环境,掌握开发技能。结合已有的类似软件的优点,加入一些新的想法,积极借鉴当前领先的理念,在设计时应该充分体现出技术的优势和瓶颈,尽量降低技术风险,结合该类软件发展现状和用户单词学习和记忆规律,探索能更好地帮助用户学习单词的产品。
(2)Android英语单词学习系统需求分析和架构设计
需求分析和架构设计是软件项目实施过程中的一个重要环节,直接决定着后期项目的成败。以用户需求为中心,通过需求分析确定该英语单词学习系统的具体功能,使用户能够更好地进行单词的学习。在架构上,Android客户端采用C/S(客户/服务器)架构模式,在整个分析和设计过程中,结合网络环境下学习者时间是零碎且泛在的特性,遵循记忆曲线的规律,以激发用户学习热情为目的,实现用户高效的自主学习和随时随地学习。
(3)Android英语单词学习系统的实现
在具体实现上,该系统开发采用Android Studio软件,开发语言是Java。进行Android开发环境的搭建,下载并安装JDK,安装ADT,下载Android SDK,配置环境变量,设置PATH路径和Android路径。环境搭好之后,进行系统功能模块的设计,建立数据库,编码完成系统各个模块的基本功能,设计并制作良好的界面,满足用户的需求,将各个功能模块连在一起,实现功能的切换。
(4)系统测试
将系统运行到手机中,需要将Android手机与电脑连接。将Android手机设置为开发模式,保证手机与电脑是联通的。然后在工程下点击右键-运行方式-Android application可以直接运行。进行系统模块功能测试。
用户点开APP后进入主界面,进行注册/登录账号,登录后可以修改个人基本信息。用户可以通过查找模块进行单词的查询,显示单词音标、读音、释义,如图1所示。用户选择词库进行学习,点击“学习”模块进入学习界面,出现一个单词,包括单词音标、读音,用户可以反馈认识/不认识,如果认识,则出现下一个单词,该单词不再学习,如果不认识,则显示该单词的释义,跳到下一个单词,而该单词在随后的学习中也会再次出现,如图2所示。用户可以在学习中添加单词到生词本中。完成一组单词的学习后,该组单词状态改变,用户也可在测试模块中找到该组单词进行测试,测试的形式是单词的中文释义匹配。用户选择“复习”模块进入复习界面,按照艾宾浩斯遗忘曲线推荐已学习过的单词,复习的过程同学习。用户选择“生词本”模块进入生词本界面,可以选择手动添加单词到生词本中,也可在学习/复习阶段添加生词,当生词不再是生词时,用户可以选择删除生词本中的该单词。用户可以自行设定学习提醒时间,在当日使用该APP时可选择进行签到,可以自由换肤,选择自己喜欢的图片作为背景。用户在主界面点击“退出”按钮可退出该应用。
图1 辞典查询时序图 |
图2 单词记忆活动图
4 可行性分析
(1)经济可行性
Android是Google历经数年和投资数亿美元开发出来的智能手机系统,是基于Linux内核的操作系统。随着各大移动终端生产商大力开发和生产基于Android的移动智能设备,Android迅速得到业界和社会的广泛认可,成为整个产业的热点。Android系统是开源的, 它的应用程序 (Android Application) 是基于Java语言开发的, Java语言也是开源的, 所以软件开发成本几乎为零。
(2)技术可行性
该系统拟采用Linux内核作为底层架构,采用Java语言。Android SDK提供很多需要用到的包以及调试、仿真工具。可以使用Android模拟器DDMS,也可以直接使用Android手机进行真机调试。
(3)条件可行性
现代人工作繁忙,智能手机技术发展迅速,人们与智能手机的联系日益紧密,用户通过移动端软件进行单词的学习记忆可以有效利用零碎的时间达到高效学习的目的。这类软件使用方便快捷,用户可以对该软件进行随时随地的测试使用。
4. 研究创新点
设计一个良好界面,使得功能界面简洁直观。根据记忆遗忘曲线规律提供相应科学的复习方案,与传统背单词方式不同的是,该软件对单词的学习不是简单的以电子书的形式过一遍,而是在科学的重复中加深用户对单词的记忆,达到背单词的目的。
5. 研究计划与进展
1 研究计划
为了能够使系统开发成功,基于android的英语单词学习系统的解决方案应该切合实际的用户需求和发展的趋向,在实施该系统之前,必须对一系列问题进行科学的计划:
(1)研究android技术;
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。