基于SSM的青少年编程学习系统设计与实现

摘 要:在智能技术飞速发展的今天,各国都努力争取在人工智能时代的发展中占据优势,青 少年编程教育就显得格外重要。不过,相比一些青少年编程教育发展更先进的国家,我国青少 年编程教育仍处在初级阶段,很多青少年对编程学习有很大兴趣,但是学校没有专业的指导教师,自己寻找相关资料要付出巨大的时间成本,而且很多时候不知从何找起,既浪费了时间又 耗费了精力。为了解决上述问题,让学生能够更加高效率地进行编程学习,本文尝试设计并开 发一个主要针对初高中生的高效编程学习系统。本系统将利用 Java 语言来进行设计开发,最终实现对青少年所需的编程学习资源的系统化管理,可以使青少年更加方便快捷地进行编程学习,提高学习效率。
关键词 :青少年编程学习;高效编程学习; JAVA 语言

1 绪论

1.1 研究背景、现状及意义

在现代计算机技术飞速发展的今天,社会各界对计算机技术人才培养的要求愈来愈高,计 算机技术教学的重要性也愈来愈大。而计算机技术教学的关键在于计算思维,越来越多的学科 和行业开始依赖计算思维。计算思维不仅是青少年学习能力的核心,也是编程教学的一个主要 目的。但培养学生的计算思维不是一蹴而就的,需要从青少年阶段基础编程教育着手。良好的 计算思维,不但能促进青少年的思考,也能为今后的工作奠定坚实的基础。所以,设计开发一 个针对青少年的编程学习平台非常有必要。
尽管近年来,青少年编程学习出现了“爆炸式”发展,涌现出很多有代表性的编程平台, 比如编程猫、妙小程等,但这些平台主要面向群体基本上是少儿,对于初、高中生的编程学习, 缺乏针对性的学习网站[1]。再加上初中生和高中生学业繁重,想要在网络上找到编程视频和资 料,需要花费大量的时间和精力。而且网络上的资料很多,很难找出合适的习题,这也是一件 很浪费时间的事情。 基于此,本文设计与实现了一个针对青少年编程学习的平台,本系统的主要目的就是为青 少年提供快速、高效、安全的网络编程学习服务,可随时进行课程学习、查询、下载,很大程度地提高青少年编程学习的效率。

1.2 研究内容

通过对初高中生的随机调研,了解到目前青少年对编程学习的主要需求,然后详细分析调 查统计到的这些需求,并且根据他们所预想的编程学习平台和需要的功能来进行设计开发,在 开发基本完成后可以对系统进行测试,完善系统中存在的一些问题,可以得到预期想要的系统界面和功能。
第一章绪论,对本系统开发的背景、现状、意义以及研究内容进行了简要描述。
第二章分析了开发此次编程学习系统的可行性,根据这些分析判断是否进行开发,然后进行需求分析。
第三章系统开发环境及相关技术,对本次系统开发所用的环境和技术进行了描述。
第四章系统详细设计:通过分析青少年在编程学习过程中的需求,详细设计系统的主要功能模块。
第五章展示系统实现完成后的页面,并阐述相关功能的作用。
第六章通过测试本系统已经实现了的功能,判断系统能否按预期运行。
第七章结论,对本次设计开发进行总结。

2 系统可行性分析与需求分析

2.1 可行性分析

可行性分析,就是提前对项目进行研究,分析系统到底值不值得开发。本文将从以下几个方面来进行阐述分析。

2.1.1 技术可行性

本系统开发和运行环境配置过程都简单,且开发使用的技术目前都比较成熟,而且容易操作,在技术开发上是可行的

2.1.2 经济可行性

在系统的设计过程中用到的操作工具都是可以免费使用的,所涉及到的技术也比较成熟,操作简单。而且本系统目前在青少年群体中期待值较高,市场前景很好,所以在经济方面是可
行的。

2.1.3 操作可行性

本系统在界面设计上,从适应青少年操作角度着手设计,容易理解方便操作。当用户打开平台进行操作时,可以很方便快捷地查找到各个功能模块,用户不需要专门花费时间了解系统操作。

2.2 系统需求分析

2.2.1 功能需求

本编程学习系统整体上分为管理员功能模块和用户功能模块。
(1)管理员功能部分可实现:选择管理员身份登录后,可以对个人中心管理、用户管理、资料分类管理、学习资料管理、留言板管理、系统管理等部分进行后台操作。系统管理员用例图
如图 3-1 所示。
图 2-1 管理员用例图
(2)用户功能部分可实现:个人中心、我的收藏管理、留言反馈等,也可以进入主页进行学习。在主页可实现的功能有:登录平台、搜索资料、查看资料详情、收藏资料、评论、查看系统公告、查看个人中心、发布留言。注册用户用例图如图 3-2 所示。
图 2-2 注册用户的主要功能

 2.2.2 性能需求

(1)系统响应效率:网页的反应速度必须小于 3 秒,最多 4 秒,并且可以同时支持 10,000个以上的用户。
(2)界面简洁清晰:系统界面要求简洁,各功能部分的设计要人性化,符合本次开发所针对青少年群体的操作习惯,使拥有更好的视觉体验。
(3)储存性高:由于本次要开发的是编程学习系统,就会涉及到用户的个人信息、上传的资料信息等需要进行存储,所以本系统对数据库的要求也就更高,数据库必须保证上传的全部数据都能安全稳定地存储在系统中。
(4)易学性:该系统必须满足初次使用的用户也能直接上手操作。
(5)稳定性:系统运行过程中不能出现界面闪退以及不清晰现象。

3 系统开发环境及相关技术

3.1 系统开发平台及运行环境

操作系统: Windows10 操作系统
开发工具: Eclipse
应用服务器: Tomcat7.0
数据库: MySQL 5.7
数据库管理工具: Navicat for MySQL
Java 开发工具: JDK 1.8

3.2 相关技术

3.2.1 SSM 框架

SSM 框架”即指 Spring + SpringMVC + MyBatis ,框架集由 Spring MyBatis 两个开源框架整合而成。

33.2.2 JAVA 技术

是目前所有的开发语言中使用最广泛的。相比于其他来说,它的安全性比较强,而且适应市面上大多数操作系统,并且它的扩展性和维护性都很好[6-7]

3.2.3 MySQL 数据库

本次开发的青少年编程学习系统使用的是 MySQL 数据库,该数据库对使用的平台没有任何的限制。

3.2.4 B/S 架构

B/S (浏览器/服务器),服务器需将 SQL server MySQL 等数据库安装好。用户端安装浏览器即可使用。
图 3-1 B/S 模式三层结构图

4 系统详细设计

4.1 系统功能模块

根据以上分析,本青少年编程学习系统是前台操作页面和后台管理页面这两大部分所组成的[9] 。当用户进入本系统前台后,可以进行的操作有:用户注册、用户登录、学习资源分类、资料搜索、资料详情、评论功能、加入收藏、查看系统公告、留言反馈、查看个人中心。前台可实现功能如图 4-1 所示。
图 4-1 系统前台功能模块结构图
若以管理员的角色信息登录并进入系统后台,则可以完成个人中心管理、用户管理、资料分类管理、学习资源管理、留言管理以及系统管理。

 4-2 系统后台功能模块结构图

4.2 系统工作流程

4.2.1 登录流程

登录功能可以实现管理员以及用户的不同角色登录,当用户进行登录时,流程如下:
图 4-3 登录流程图

4.2.2 注册流程

若用户没有在本系统完成过注册,则可以在注册界面进行注册,完成所需填写的一系列信息并提交后,即完成注册。注册流程如下:

4-4 注册流程图

 4.2.3 添加信息流程

管理员在后台添加用户的个人信息时,系统会对输入的数据和内容进行核实验证,若通过则添加成功,否则失败。流程如下:
、图 4-5 添加信息流程图

4.2.4 删除信息流程

管理员可对不再需要的信息数据进行删除操作,在进行删除信息的此项操作时,本系统会提醒是否进行删除,若选择确定,则完成删除,系统数据库将对修改完成后的信息进行更新。具体的过程如图:
图 4-6 删除信息流程图

 4.3 数据库设计

4.3.1 数据库 E-R 图设计

本系统采用的是 MYSQL 数据库,由于是面向想要学习编程的青少年开发的,属于学习系统,所以就需要对用户以及学习资料信息进行管理,信息会很多,这就需要数据库分类要清楚,在添加或修改信息时,不能出现信息混乱,各个实体之间的关系也要清楚明确[10] 。本系统的各个实体和它们各自相对应的属性如下:
(1)用户实体类的属性包括:姓名、头像、联系电话、用户 ID 、创建时间、用户名、密码等,E-R 图如图:
图 4-7 用户 E-R
(2)管理员实体类的属性主要有管理员 ID 、用户名、密码等, E-R 图如下图所示:
图 4-8 管理员 E-R
(3)资料分类实体类的属性有资料 ID 、创建时间以及分类名, E-R 图如下图所示:
图 4-9 资料分类 E-R
(4)学习资源实体类的属性主要有相关资料内容、音频、资料介绍、点击次数、视频、资料ID、资料标题等, E-R 图如下图所示:

 4-10 学习资源 E-R

(5)系统公告实体类的属性主要有公告 ID 、创建时间、标题、简介等, E-R 图如下图所示:
图 4-11 系统公告 E-R
(6)留言反馈实体类的属性主要有留言 ID 、创建时间、用户 ID 、用户名、留言内容以及回复内容,E-R 图如下图所示:
图 4-12 留言反馈 E-R
(7)评论内容实体类的属性主要有用户名、评论内容、回复内容等, E-R 图如下:
图 4-13 评论内容 E-R
(8)轮播图实体类的属性有轮播图 ID 、图片名、图片, E-R 图如下:
图 4-14 轮播图 E-R

4.3.2 数据库逻辑设计

本系统的主要数据库表如下:
(1)用户信息表,用来存储用户的个人信息,如用户名、密码、姓名、性别以及联系电话等。如表 4-1
4-1 用户表
(2)管理员表,存储管理员的个人信息,如编号、用户名以及密码等 [11] 。如表 4-2
4-2 管理员表

 

(3)资料分类表,存储资料分类的情况,包括资料编号、创建时间以及分类。如表 4-3 10
4-3 资料分类表
(4)学习资源表 , 存储了资料的编号、创建时间、资料标题、视频信息、资料介绍以及发布日期等。如表 4-4
4-4 学习资源表
(5)系统公告表,包含了所上传公告的编号、标题、内容等。如表 4-5
4-5 系统公告表
(6)留言反馈表,包含了留言编号、留言内容以及回复等。如表 4-6
4-6 留言反馈表

(7)评论内容表,包含了评论的用户名、评论内容以及回复内容等。如表 4-7
4-7 评论内容表
(8)轮播图表,包含了轮播图的编号、图片名以及图片。如表 4-8
4-8 轮播图表

5 系统功能实现

5.1 主界面的设计与实现

根据系统的需求分析,最终设计出如下界面。作为一个针对青少年的编程学习系统,要符合青少年的操作习惯,界面必须直观简洁,不可太过复杂繁琐反而影响学习效率。系统前台能够对首页、学习资源、系统公告、留言反馈、个人中心等内容进行查看,如图 5-1 所示:
图 5-1 系统功能界面图

5.2 管理员功能模块

当管理员要在本系统进行登录时,必须要在登录时填写正确的用户名、密码,并选择正确的角色进行登录,如图 5-2 所示:
图 5-2 管理员登录界面图
管理员可以对平台首页、个人中心、用户管理、资料分类管理、学习资源管理、留言管理、系统管理等模块进行信息管理和查看。

5.2.1 个人中心

在个人中心可以对自己用户名以及密码进行修改。
图 5-3 个人中心界面图

5.2.2 用户管理

用户管理:当管理员进入用户管理页面后,可以对已经存在的数据信息进行修改、删除,如图 5-4 所示:
图 5-4 用户管理界面图

5.2.3 资料分类管理

资料分类管理:管理员在此页面可以查看已经建立好的资料类别,也可以对不需要的资料分类进行删除,或者增添新需要的类别,还可以在搜索栏直接搜索想要找的类别,可快速对它做出修改操作,如图 5-5 所示:
图 5-5 资料分类界面图

5.2.4 学习资料管理

学习资料管理:该页面可以进行资料上传,包括视频、音频已经相关的试题资料,可以对资料标题、标签和介绍等内容进行修改,也可以直接进行资料添加和删除。还可以查看对应视频下的用户评论。如图 5-6 所示:
图 5-6 资源管理界面图

5.2.5 留言管理

留言管理:在此页面管理员可以查看和管理用户留言,还可以解答用户提出的问题。如图 5-7 所示:
图 5-7 留言管理界面图  

5.2.6 系统管理

系统管理:在系统管理页面可以对系统公告和轮播图进行管理,增添新的图片和公告内容,或者对不需要的轮播图片和公告内容进行删除。页面如下图:
图 5-8 公告管理界面图

5-9 轮播图管理界面图

5.3 用户功能模块

5.3.1 用户注册功能实现

用户在注册时需按照系统提示填写自己的信息,然后点击注册,如用户注册成功,系统就会自动弹出登录窗口,输入正确信息可完成登录。如图 5-10
图 5-10 用户注册

5.3.2 用户登录功能实现

如果在本平台已经完成过注册,则可以直接打开登录界面,然后输入自己的账号和密码进行登录。登录页面如图 5-11
图 5-11 用户登录

5.3.3 学习资源分类功能实现

平台针对青少年的可接受程度分为八个类别。用户点击不同的类别,就可以查看该类别下的所有资料。点击之后可以查看视频,下载资料。资料分类页面,如图 5-12
图 5-12 资源分类  

5.3.4 资料搜索功能实现

用户在浏览学习资料页面时,可以进行搜索查询。本平台可以通过资料标题、分类名称以及相关标签进项查询。如图 5-13
图 5-13 资料搜索  

5.3.5 资料详情功能实现

用户在打开资料信息后,可以查看对应的分类、资料介绍以及发布日期等,信息下方即对应的视频课程,可以进行下载、倍速播放等。如图 5-14
图 5-14 资料详情  

5.3.6 评论功能实现

用户登录后在视频资料下方可以进行评论交流。如图 5-15
图 5-15 评论功能

5.3.7 加入收藏功能实现

用户可以将自己喜欢的资料加入收藏,点击“我的收藏管理”进行查看,方便查找。如图 5-16:
图 5-16 加入收藏  

5.3.8 系统公告功能实现

用户可以在此页面查看管理员最新发布的消息。如图 5-17
图 5-17 系统公告  

5.3.9 留言反馈功能实现

用户可以在此页面对平台提出意见反馈,以促进平台改进。如图 5-18
图 5-18 留言反馈  

5.3.10 个人中心相关功能实现

在个人中心页面,用户可以修改自己已经上传保存过的信息;点击“我的收藏”可查看之前收藏过的资料。如图 5-19
图 5-19 个人中心

6 系统测试

对系统进行测试可完善系统中存在的一些问题,使预期想要的系统界面和功能得以实现,并检验网站能否符合要求正常运行,以便对后续问题做出相应的解答和完善,使网站后期投入使用后尽少出错。

6.1 测试定义

测试必须贯穿系统整个生命周期。本系统测试使用了黑盒测试方法来对该系统进行测试

6.2 测试目的

系统开发设计工作结束后,要对系统进行功能测试,以便发现系统中有哪些漏洞,并针对漏洞问题做出及时修改措施,确保系统能够按预期所设想正常稳定地运行[14-15]

6.3 功能测试

6.3.1 管理员登录测试

主要测试管理员输入不同的用户名、密码后,系统显示的结果,具体测试输入情况如下表 6-1 示:
6-1 管理员登录测试用例表

6.3.2 用户登录测试

用户在登录之后才可以进入平台进行一系列操作,此处为用户登录的测试用例。
6-2 用户登录测试用例表

6.3.3 留言发布

发布留言可以与管理员进行交流沟通。发布留言测试用例如表如下:
6-3 发布留言测试用例表

7 结论

本文研究了青少年编程学习系统的设计与实现,首先简述了系统开发的背景、现状等,然后是可行性分析、需求分析和相关技术介绍,之后是相关功能设计与实现,最后是系统的功能测试以及结论。
本论文实现了用 Java MYSQL 等设计开发的青少年编程学习系统,本系统采用 B/S 架构, 用户无需再下载其他软件,在浏览器里打开即可使用。在本次系统开发之前,由于本人对于 Java 知识的掌握不透彻,所以起初遇到很多问题,在不断的上网查找相关信息,并找老师寻求相关问题的指导和解答,以及和同学探讨之后,出现的大部分问题基本得到了解决。在这次的系统开发过程中,本人对之前学过的书本内容有了更清晰全面的掌握,也认识到了自己的不足,同时更加深刻地体会到要想解决问题一定要亲自实践,并敢于试错,相信这些对自己今后的发展都会有很大帮助。

参考文献:

[1] 孙丹 , 李艳 . 国内外青少年编程教育的发展现状、研究热点及启示——兼论智能时代我国编程教育的实施策略[J]. 远程教育杂志 ,2019,37(03):47-60.
[2] 李 杰 , 陈 惠 敏 . 基 于 SSM 的 在 线 学 习 平 台 设 计 与 实 现 [J]. 电 脑 编 程 技 巧 与 维护,2019,(11):53-54+66.
[3] 孙丹 , 李艳 . 我国青少年编程教育课程标准探讨 [J]. 开放教育研究 ,2019,25(05):99-109.
[4] 彭 聪 . 在 线 编 程 平 台 数 据 集 的 研 究 与 实 现 [D]. 北 京 邮 电 大
,2020.DOI:10.26969/d.cnki.gbydu.2020.000280.
[5] 姜 丽 莉 , 涂 玄 武 . 基 于 SSM 的 “ 我 的 课 堂 ” 管 理 系 统 的 设 计 与 实 现 [J]. 科 技 与 创
,2021,(06):118-119.
[6] 邓子云 .Java 网络编程从基础到实践 [M]. 北京 : 电子工业出版社 ,2019.
[7] 陈圣国 .Java 信息系统设计与开发实例 [M]. 北京:机械工业出版社, 2019. [8] 石正喜 . MySQL 数据库实用教程 . 北京:北京师范大学出版社 2019
[9] 孔硕 . Scratch 在线编程学习系统的研究与实现 [D]. 北京邮电大学 ,2019.
[10] 王玉英 . 基于 Java MySQL 数据库访问技术 [J]. 现代计算机:专业版 , 2018, 19(14):63-66
[11] 郭 鑫 . 基 于 HUSTOJ 的 青 少 年 编 程 在 线 训 练 比 赛 系 统 设 计 与 实 现 [D]. 山 东 师 范 大
,2019.DOI:10.27280/d.cnki.gsdsu.2019.000025.
[12] Todd Cook. Java 从入门到精通 [W]. 北京:电子工业出版社, 2019.
[13] Bruce Eckel. Thinking in java(English Edition). 北京:机械工业出版社 ,2019
[14] Yutaka Watanobe,Chowdhury Intisar,Ruth Cortez,Alexander Vazhenin. Next-Generation
Programming Learning Platform: Architecture and Challenges[J]. SHS Web of Conferences,2020,77.
[15] Ko Eunji,Lee Jeongmin. Assessment Process Design for Python Programming Learning[J].
Journal of The Korean Association of Information Education,2020,24(1).
喜欢的点赞收藏加关注私信作者沟通交流
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

加瓦程序设计师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值