.NET MAUI 在线课程表开源项目

47 阅读3分钟

前言

推荐一款开源的教务在线接口/课程表查看工具,解决大家查阅课程安排、考试信息等重要资料等问题。

本文将详细介绍该项目的功能、技术特点以及如何开发和使用它。

开发动机

校园内的网络状况不稳定,使得学生们在匆忙赶往教室的路上难以及时获取所需信息。另外,现有的小程序需要用户每次都进行登录验证,这无疑增加了使用的复杂性。

因此,团队希望能够开发一款无需登录即可查看课程表的应用,使学生的生活变得更加便利。

功能特色

课表展示:清晰展示学生的课程安排,帮助合理规划学习时间。

考试查询:及时更新考试相关信息,避免错过重要考试节点。

本地缓存:减少重复加载数据的时间,提高应用响应速度。

上课提醒:针对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技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!

优秀是一种习惯,欢迎大家留言学习!