Reading 英语学习软件
项目背景
2019年末,2020年初,大三寒假,疫情爆发。
大三下学期(2020年上半年)在家上网课,课程项目要做Email系统,需要客户端Android实现。
在小组里我负责Android客户端的工作,其余还有后端、Email协议的同学。
一半手写一半百度做完Android前端和整个Email项目之后,想通过做一个App来加深对Java和Android的学习理解,Reading就诞生了。
项目历史
一、诞生
最初先做的功能是将单词模块。所有单词数据(大概几千个,从Bing爬下来的)保存到SQLite数据库里,apk打包的时候带进去。
当时使用的ListView展示列表(虽然RecyclerView已经成为主流,但是不懂得如何去学习最新的技术,只会CSDN、百度,代码能跑就行,所以用的ListView),算是对于Android View类型的一个初步学习。
很遗憾当时没有用git管理项目,导致所有最初的代码都无了。
二、前端框架
这里的框架说的是底部导航和侧边栏导航这些框架。单词模块成型后,又做了阅读模块。模块多了就得考虑前端怎么展示,用哪种导航。
最后选择了底部导航,更方便直观一点。记得是基于GitHub上一个个人小项目改的,名字大概叫PerfectFrame...至今(2022.3.27)项目的框架依旧没有的大改,仅优化性能。
三、后端部署
将大量的单词数据放到前端SQLite数据库是不现实的,同时也着手做登录模块,所以考虑将数据库放到后端,那就需要一个后端项目了,用什么框架呢?
其实我对后端的知识仅限于大学JSP的学习,学习Android耗费了太多精力,走了太多弯路,没有精神和能力(菜🐔)再去学习后端的知识。所以就在CSDN找了个教程,撸了个SSM框架来处理前端和数据库的数据交互,能实现接口调用就行,不考虑性能和高并发等。
包括后来的后端部署到云服务器(腾讯云、百度云、华为云...试过不少,也打下了一定的Linux系统操作基础),至此项目整体架构已见雏形。
四、仓库管理
最初的项目代码都没有托管到git,虽然开始的代码都很烂很烂,但对于我这种喜欢怀旧的人来说,还是很有纪念意义的,没有保存下来很可惜。
2021年7月份工作后对于git达到了能够运用的地步(真的是菜,这么好的东西竟然不会去用,所以在大学里,学习基础的同时要多去做工程,上课学习是学不到实用的东西的),所以把项目托管到了GitHub,终于能记录Reading开发的历史了!
项目架构
- 前端Android Java;
- 后端SSM框架;
- 数据库MySQL;
- 十万多单词数据来自于Bing翻译,爬虫爬的。