1.功能调查与系统功能框架图
功能
模拟图书馆查书、借书、还书系统,提供给需要在图书馆借书的人们。
Gitee项目地址:https://gitee.com/suzukaze_skrame/java-learn
系统功能框架图
2.类设计(UML类图)
3.类说明
BookInfo:
说明:图书馆图书详细信息
主要属性:name(书名),remainQuantity(剩余可借数量),location(摆放位置),id(图书条形码ID)
主要方法:remainQuantityAdd(剩余可借数量+1),remainQuantitySubtraction(剩余可借数量-1)
BorrowedBooksInfo:
说明:用户借书信息
主要属性:name(书名),id(图书条形码ID),user(借书的用户名)
主要方法:getAllBooks(获取该用户所有借书信息)
Library:
说明:图书馆所有图书信息
主要属性:books(所有图书,使用List,可以根据图书ID直接访问图书的详细信息)
主要方法:readBookList(从文件中读取图书馆的所有图书信息),writeBookList(往文件中写入修改的图书信息)
UserOperateImpl:
说明:查书、借书、还书操作实现
主要属性:library(图书馆所有图书信息)
主要方法:searchBooks(查书),borrowBooks(借书),returnBooks(还书),showAllBooks(输出该用户所有借书信息)
UserService:
说明:登录界面
主要属性:currentUser(记录当前用户)
主要方法:login(登录),register(注册)
4.系统的包(package)的规划设计
5.特色
1.使用了DAO模式
好处:目前使用数组对数据进行处理,以后如果要改成数据库,不需要重写原代码,只要写新的数据库类。
2.实现了数据持久化(数据存储)
目前使用txt文本存储用户名、密码、图书信息。
3.使用了阿里巴巴代码规范扫描插件对项目代码进行扫描
由于这次写的是控制台界面,扫描结果显示界面方法行数超过80行,其他均无问题。
4.已完成大部分功能,通过控制台操作,简单演示如下:
(1)登录
(2)注册
(3)查书
(4)借书
(5)还书
(6)程序健壮性部分演示