基于Android的记单词App系统的设计与实现

博主介绍:✌IT徐师兄、7年大厂程序员经历。全网粉丝15W+、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌

🍅文末获取源码联系🍅

👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟

2022-2024年最全的计算机软件毕业设计选题大全:1000个热门选题推荐✅

Java项目精品实战案例《100套》

Java微信小程序项目实战《100套》

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及文档编写等相关问题都可以给我留言咨询,希望帮助更多的人

文章目录

    • 1 简介
    • 2. 设计目标
    • 3 基于Android的前台技术
    • 4.系统设计实现
    • 5系统详细实现
      • 5.1 用户登陆的设计与实现
      • 5.2 单词学习
      • 5.3 单词复习
      • 5.4 单词浏览
      • 5.5 个人中心
    • 6 参考文献
    • 7 推荐阅读
    • 8 源码获取:

1 简介

英语在国内目前属于各类的考试的必修课程,中考、高考、考研、出国,几乎贯穿所有学习阶段。而单词作为英语学习的基础,有着异常重要的作用。传统单词书笨重、不易携带和查询。随着智能手机的普及,人们获取信息的方式已经发生了巨大的转变。智能手机正在逐步融入我们的生活,并影响和改变着我们的生活。因此,基于Android系统设计一款记单词软件,方便人们随时随地记忆单词,合理利用碎片化时间。

**关键字:**JAVA Android 软件设计 单词记忆

基于Android的记单词App系统的研究与实现:https://it1314.top/article/1291/

2. 设计目标

该研究项目主要设计目标为实现基本的单词记忆和查询功能,包括用户可以进行自主的注册登录,用户登录系统以后,可以在App上使用单词查询和记忆功能。除此之外,还设计提供单词复习、生词本等功能,便于加深记忆。

该系统的预期功能如下:

  • 用户登录注册:新用户可以进行注册,注册后支持使用注册账号密码进行登录;

  • 单词查询:用户可以使用App搜索输入单词查中文;

  • 单词记忆:通过某种形式帮助单词记忆;

  • 单词复习:辅助定期对易错词进行周期性记忆;

  • 单词浏览:用户可以浏览英语单词词库;

  • 个人中心:用户可以对个人信息进行浏览、修改、推出登陆;

3 基于Android的前台技术

Android是基于Linux内核的操作系统,是Google公司于2007年11月公布的智能手机操作系统,它是由开源的Linux系统发展而来,该平台由操作系统、中间件、用户界面和应用软件组成,是一个为移动终端打造的开放、完整的操作系统。

从体系结构上来看,Android系统的可以分为四大主要组成部分,包含内核层和系统操作层、应用结构层和上层应用层,如下图所示:IMG_256

4.系统设计实现

本章节是论文的重点,详细对App流程设计、功能模块,通过标准化流程图等软件语言,对整个项目实现进行阐述,并对项目可实现的各功能模块进行展示。

本研究设计的单词记忆App,根据需求分析,对功能模块进行设计,主要包括以下功能:

1.用户注册和登陆:用户可以通过注册获取权限并登陆App,并使用相关功能;

2.单词搜索:可以搜索输入单词查中文,并有已背单词和未背单词数提示;

3.单词记忆:随机单词和对应读音,用户通过APP选择正确释义(三个选项),选对了则将该单词加入已背单词本,选错了则加入陌生单词本;

4.单词复习:该功能分两部分:

  • 随机从已背单词本选单词,然后随机空出几个字母,写错则将该单词从已背单词本删除,并加入陌生单词本;

  • 随机中文释义(按字母排序显示)和发音,提供3个单词选项,选对了则将该单词加入已背单词本,选错了则加入陌生单词本;

5.单词浏览:

  • 可以选择查看词库或者已背单词本或者陌生单词本的单词(按字母排序)

  • 每个单词旁边设计已背和陌生按钮,便于用户根据实际情况选择添加。

6.个人中心:个人共中心内对用户信息予以展示,并支持对账户头像、昵称、性别、年龄等信息进行修改;

5系统详细实现

针对核心功能模块设计,主要以实现单词浏览、查询、记忆、复习等功能,具体设计如下:

1.用户注册和登陆:用户可以通过注册获取权限并登陆App使用相关功能;

2.单词搜索:可以搜索输入单词查中文,并有已背单词和未背单词数提示;

3.单词记忆:随机单词和对应读音,用户通过APP选择正确释义(三个选项),选对了则将该单词加入已背单词本,选错了则加入陌生单词本;

4.单词复习:该功能分两部分:

  • 随机从已背单词本选单词,然后随机空出几个字母,写错则将该单词从已背单词本删除,并加入陌生单词本;

  • 随机中文释义(按字母排序显示)和发音,提供3个单词选项,选对了则将该单词加入已背单词本,选错了则加入陌生单词本;

5.单词浏览:

  • 可以选择查看词库或者已背单词本或者陌生单词本的单词(按字母排序)

  • 每个单词旁边设计已背和陌生按钮,便于用户根据实际情况选择添加。

6.个人中心:个人共中心内对用户信息予以展示,并支持对账户头像、昵称等信息进行修改;

5.1 用户登陆的设计与实现

用户管理是该项目App的核心功能之一,用户通过APP提供的注册、登陆功能,实现使用其它核心功能的目的。应用逻辑为用户点击进入App,老用户输入手机号和密码进行用户登陆;新用户点击"注册"按钮进行用户注册,注册后通过用户名、密码实现登陆。

注册模块采用手机号作为用户ID,用户填写手机号、编辑密码并进行二次确认,如果用户名合法且两次密码一致,则注册成功,用户注册信息写入数据库进行保存。

登录模块,用户输入电话号和密码后,由系统调用数据库相关信息,与用户输入的信息进行比较,如果结果一致,则认定为合法用户,登录成功。

登录注册模块运行页面效果如下图所示,界面简洁明了,并设计了"自动登陆"按钮,简化使用流程。

实现效果如下图所示:


5.2 单词学习

本模块是本App的核心功能模块,支持单词搜索查询,并有已背单词和未背单词提示,具体实现效果如下图:

图.单词学习效果图

5.3 单词复习

复习模块提供两种复习模式:随机从已背单词本选单词,然后随机空出几个字母,进行单词填空,写错则将该单词从已背单词本删除,并加入陌生单词本;或者随机中文释义(按字母排序显示)和发音,提供3个单词选项,选对了则将该单词加入已背单词本,选错了则加入陌生单词本。

具体实现效果如下图:

图.单词填空效果图

图.中文选词效果图

5.4 单词浏览

本模块可以选择查看词库或者已背单词本或者陌生单词本的单词(按字母排序),并提供添加按钮,便于用户根据实际情况选择单词添加如合适的词库。具体实现效果如下图:


图.单词浏览效果图

5.5 个人中心

个人共中心内对用户信息予以展示,并支持对账户头像、昵称、性别、年龄等信息进行修改。用户登陆App后,点击"我的"按钮进入个人中心,点击用户头像、昵称等,支持自行对个人信息进行修改,并设置有"退出登陆"按钮。

用户的个人中心效果如下图所示:

图.个人中心效果图

6 参考文献

  1. 李华英,朱加繁,石晴,等.英语词汇学习方法探讨[J].云南农业大学学报(社会科学版),2016,(1).99-105.

[2]谭洋玉.从词汇学习app"百词斩"看英语词汇教学策略[J].校园英语(下旬),2016,(6).28-28.

[3]
谢炆炆.基于手机APP的移动学习在大学英语教学中的应用研究[J].黑龙江生态工程职业学院学报,2018,(2).146-149.doi:10.3969/j.issn.1674-6341.2018.02.056.

[4]冯希叶主编;王辰龙,刘斌,朱海林,唐海亮副主编.信息技术类专业知识理论:电子科技大学出版社,2015.08

[5]Java面向对象程序设计
梁燕来;程裕强 人民邮电出版社 201304

[6]明日科技.Java从入门到精通(第3版):清华大学出版社,2014

7 推荐阅读

Java基于SpringBoot+Vue的网上图书商城管理系统(附源码,教程)

基于 Python 的豆瓣电影分析、可视化系统,附源码

Java 基于SpringBoot的某家乡美食系统

Java基于SpringBoot的学生就业管理信息系统

8 源码获取:

大家点赞、收藏、关注、评论啦 、查看👇🏻获取联系方式👇🏻

👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟

2022-2024年最全的计算机软件毕业设计选题大全:1000个热门选题推荐✅

Java项目精品实战案例《200套》

Java微信小程序项目实战《100套》

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及文档编写等相关问题都可以给我留言咨询,希望帮助更多的人

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/532493.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linkedin领英封号原因是什么?如何养号?

领英作为全球最大的职场社交平台,用户总数已超过8亿,覆盖200多个国家和地区,中国会员总数也已经累计超过5700万,庞大的基数使得他迅速成为跨境业务员建立形象,拓展人脉,开发客户的重要渠道。“领英职场”的…

C语言面试题之检查二叉树平衡性

检查二叉树平衡性 实例要求 1、实现一个函数,检查二叉树是否平衡;2、在这个问题中,平衡树的定义如下:任意一个节点,其两棵子树的高度差不超过 1; 示例 1: 给定二叉树 [3,9,20,null,null,15,7]3/ \9 20/…

【PyQt5篇】和子线程进行通信

文章目录 &#x1f354;使用QtDesigner进行设计&#x1f6f8;和子线程进行通信&#x1f388;运行结果 &#x1f354;使用QtDesigner进行设计 我们首先使用QtDesigner设计界面 得到代码login.ui <?xml version"1.0" encoding"UTF-8"?> <ui …

如何保证消息不丢失?——使用rabbitmq的死信队列!

如何保证消息不丢失?——使用rabbitmq的死信队列&#xff01; 1、什么是死信 在 RabbitMQ 中充当主角的就是消息&#xff0c;在不同场景下&#xff0c;消息会有不同地表现。 死信就是消息在特定场景下的一种表现形式&#xff0c;这些场景包括&#xff1a; 消息被拒绝访问&am…

c/c++函数: strtok() ,strtok_s()

概述 函数的原型&#xff1a; char* strtok : strtok (char* _String, char const* _Delimiter); char* strtok_s: strtok_s( char* _String, char const* _Delimiter, char** _Context);函数的参数: _String : 传入一个字符串 _Delimiter: 传入一个字符字…

【canvas】canvas基础使用(四):线型的设置

简言 学习如何使用canvas来设置线形。 线型的方法和属性 使用canvas经常会和线段打交道&#xff0c;下面是设置线型的常用属性和方法。 lineWidth 线宽 CanvasRenderingContext2D.lineWidth 是 Canvas 2D API 设置线段厚度的属性&#xff08;即线段的宽度&#xff09;。 线…

VR紧急情况模拟|V R体验中心加盟|元宇宙文旅

通过VR技术实现紧急情况模拟&#xff0c;提升安全应急能力&#xff01; 简介&#xff1a;面对突发紧急情况&#xff0c;如火灾、地震、交通事故等&#xff0c;正确的反应和应对能够有效减少伤害和损失。为了提高人们在紧急情况下的应急能力&#xff0c;我们借助先进的虚拟现实…

全国水科技大会 免费征集《水环境治理减污降碳协同增效示范案例》

申报时间截止到2024年4月15日&#xff0c;请各单位抓紧申报&#xff0c;申报条件及申报表请联系&#xff1a;13718793867 围绕水环境治理减污降碳协同增效领域&#xff0c;以资源化、生态化和可持续化为导向&#xff0c;面向生态、流城、城市、农村、工业园区、电力、石化、钢…

寄快递的省钱小妙招,看看你能知道多少

首先就是从包裹的重量上和体积上&#xff0c;我们都知道快递员上门取件都是需要称重的&#xff0c;我们能做的就是尽量压缩包裹的体积来减少快递的运费价格。然后是使用自己的包装袋来打包行李&#xff0c;快递员的袋子也是需要另外花费的。对于一些不容易损坏的货物来说&#…

scan纯享代码 java

scan纯享代码 java 1 scan用法2 next3 nextLine 1 scan用法 在录入中间有回车的字符串的时候&#xff0c;不要使用next&#xff08;&#xff09;和nextLine&#xff08;&#xff09;的配合&#xff01;&#xff01; scan用法 Scanner scannernew Scanner(System.in); String…

了解单链表

27. 移除元素 - 力扣&#xff08;LeetCode&#xff09; 思路一&#xff1a; 创建新的数组&#xff0c;遍历原数组&#xff0c;将不为val的值放到新数组当中。空间复杂度不为O(1) 思路二&#xff1a;双指针法 我们设置两个指针src&#xff08;源数据&#xff09;和dst&#xf…

STM32G030F6P6 HSE时钟不能使用无源晶振,只能使用有源晶振!

STM32G030F6P6 HSE时钟不能使用无源晶振&#xff0c;只能使用有源晶振。 参见STM32CubeMX配置 使能RCC中 BYPASS CLOCK SOURCE后只有一个 PC14引脚。 查手册中 5.2.1 HSE clock章节 部分引脚少的封装&#xff0c;HSE时钟只有 OSC-IN&#xff0c;因此只能使用有源晶振 查Data…

mybatis-动态sql

动态sql 1、if标签2、where标签3、trim标签4、set标签5、choose when otherwise6 、foreach6.1 用in来删除6.2 用or来删除6.3 批量添加 7、 sql标签与include标签 1、if标签 需求&#xff1a;多条件查询。 可能的条件包括&#xff1a;品牌&#xff08;brand&#xff09;、指导…

SQL注入sqli_labs靶场第二题

解题思路与第一题相同 ?id1 and 11 和?id1 and 12进行测试如果11页面显示正常和原页面一样&#xff0c;并且12页面报错或者页面部分数据显示不正常&#xff0c;那么可以确定此处为数字型注入。 联合查询&#xff1a; 猜解列名数量&#xff1a;3 ?id1 order by 4 判断回显…

20240410解决OK3588-C的核心板刷机之后无法启动的问题

20240410解决OK3588-C的核心板刷机之后无法启动的问题 2024/4/10 19:38 1、编译OK3588的LINUX/Buildroot&#xff1f;forlinxubuntu: ~/3588/OK3588_Linux_fs$ sudo ./build.sh BoardConfig-linuxfs-ok3588.mk 2、进行全编译 forlinxubuntu: ~/3588/OK3588_Linux_fs$ sudo ./bu…

ArrayList中多线程的不安全问题

ArrayList中的不安全问题 正常的输出 List<String> list Arrays.asList("1","2","3"); list.forEach(System.out::println);为什么可以这样输出&#xff0c;是一种函数是接口&#xff0c;我们先过个耳熟 Arrys.asList是返回一个ArrayL…

ruoyi-nbcio-plus基于vue3的flowable的自定义业务提交申请组件的升级修改

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 http://122.227.135.243:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a…

nandgame中的Tokenize(标记化)

题目说明&#xff1a; "Tokenize" "标记化"标记器预先配置为识别数字和符号 。请配置标记器以额外识别符号减号 - 和括号 ( 和 )。您可以编辑源代码区域中的代码以测试它的标记化。level help 我们将构建一种高级编程语言。 高级语言具有更加人性化和灵…

Android 输入法框架

输入法属于输入系统的一部分&#xff0c;区别于输入系统只能向系统产生时间&#xff0c;输入法能向系统输入具体的内容&#xff0c;下面来认识输入法的大体框架&#xff0c;以下内容参考清华大学出版社出版的《Android图形显示系统》。 输入法框架包含3个组件&#xff0c;各组件…

AI智能滤镜解决方案,全新的视觉创作体验

一张精美的图片&#xff0c;一段引人入胜的视频&#xff0c;往往能够瞬间抓住观众的眼球&#xff0c;为企业带来不可估量的商业价值。然而&#xff0c;如何快速、高效地制作出高质量的视觉内容&#xff0c;一直是困扰众多企业的难题。美摄科技凭借其领先的AI智能滤镜解决方案&a…