前言
推荐一款开源的教务在线接口/课程表查看工具,解决大家查阅课程安排、考试信息等重要资料等问题。
本文将详细介绍该项目的功能、技术特点以及如何开发和使用它。
开发动机
校园内的网络状况不稳定,使得学生们在匆忙赶往教室的路上难以及时获取所需信息。另外,现有的小程序需要用户每次都进行登录验证,这无疑增加了使用的复杂性。
因此,团队希望能够开发一款无需登录即可查看课程表的应用,使学生的生活变得更加便利。
功能特色
课表展示:清晰展示学生的课程安排,帮助合理规划学习时间。
考试查询:及时更新考试相关信息,避免错过重要考试节点。
本地缓存:减少重复加载数据的时间,提高应用响应速度。
上课提醒:针对Windows端用户,提供上课前提醒功能,防止迟到。
项目技术
项目采用了先进的开发理念和技术,力求在实现功能的同时,保证代码的可维护性和可扩展性。
- MVVM架构:实现了界面与逻辑的分离,便于开发和测试。
- 依赖注入:在WPF桌面开发中引入依赖注入,提升组件间的解耦合程度。
- XAML自定义控件:创建单一职责的控件,简化界面开发过程。
- 使用.NET MAUI框架:基于.NET MAUI的跨平台特性,实现一次编写,多平台运行的目标。
界面展示
虽然本项目定位为入门级,但是在代码组织、用户体验等方面的考量却不容小觑。
对于初学者而言,它不仅是一个可供学习的实际案例,也能够激发对.NET MAUI框架的兴趣。
项目架构
Hrbust:封装了哈尔滨理工大学教务在线API库,通过模拟网页请求并使用HtmlAgilityPack包解析HTML文档来获取数据。
HrbustDoggy.Cli:一个用于测试API库功能的命令行客户端,也可以作为简易工具使用。
HrbustDoggy.Maui:基于.NET MAUI框架的跨平台客户端。
HrbustDoggy.Wpf:基于WPF框架的Windows桌面客户端。
项目说明
要构建此项目,请确保已安装.NET 8.0及以上版本的SDK,并执行dotnet workload restore来安装必要的工作负载。
推荐使用Visual Studio 2022 17.8.2版本进行开发,Visual Studio Code配合相应插件也能够胜任开发工作。
请注意,目前HrbustDoggy.Maui项目中已移除了MacOS和iOS平台目标的支持。
理论上,该项目仍然可以生成适用于这两个平台的可执行文件,有兴趣的开发者可以自行测试。
总结
这款教务在线接口/课程表查看工具,以其简便的操作流程和实用的功能受到了广大学生的好评。
通过整合多项技术,该工具不仅提高了学生的使用体验,也为.NET MAUI框架的应用提供了一个良好的示范。
希望本文能在 MAUI开发方面为各位提供有益的帮助。期待大家在评论区留言交流,分享您的宝贵经验和建议。
最后
如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。
也可以加入微信公众号 [DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!
优秀是一种习惯,欢迎大家留言学习!