推荐:FreshMvvm —— 轻量级Xamarin.Forms MVVM框架

推荐:FreshMvvm —— 轻量级Xamarin.Forms MVVM框架

项目地址:https://gitcode.com/rid00z/FreshMvvm

项目介绍

FreshMvvm 是专为 Xamarin.Forms 设计的超轻量级MVVM框架,以其简单和灵活的特性而备受推崇。它旨在提供易学易用的开发体验,是那些尚未准备好采用RxUI但又希望实现高效MVVM架构的开发者的理想选择。

项目技术分析

FreshMvvm 的核心设计理念在于约定优于配置。它的特点包括:

  • 页面模型导航:直接从一个PageModel导航到另一个PageModel,简化视图与导航的关系。
  • 自动绑定上下文:页面的BindingContext会自动设置为对应的PageModel对象。
  • 事件自动化:自动处理页面事件,如显示和隐藏。
  • 基础方法支持:PageModel上的初始化、反初始化等基本方法可以接收参数值。
  • 内置IOC容器:提供了依赖注入功能,允许在构造函数中注入服务。
  • 自定义导航:通过简单的接口实现复杂的导航逻辑。

项目及技术应用场景

FreshMvvm 可广泛应用于各种类型的 Xamarin.Forms 应用程序,尤其适合以下场景:

  • 快速原型开发:由于其轻量化设计,非常适合用于快速构建应用原型。
  • 教育示例:对于初学者,FreshMvvm 是学习MVVM模式的理想起点。
  • 小到中型项目:对于不需要复杂状态管理和反应式编程的项目,FreshMvvm 提供了足够强健的基础。
  • 团队协作:因其简单的API,团队成员可以更容易地理解和维护代码。

项目特点

  • 轻量级:与其他大型MVVM框架相比,FreshMvvm 极简且不带额外负担。
  • 特定于Xamarin.Forms:针对Xamarin.Forms平台进行了优化,充分利用其内置特性。
  • 易于学习:设计时考虑到了易用性,使得开发者能够快速上手。
  • 灵活性:通过约定而非配置,让开发者可以根据自己的需求定制行为。
  • 强大的导航:支持基本导航,也允许自定义复杂的导航策略。

示例代码

页面间的导航如下所示:

await CoreMethods.PushPageModel<QuotePageModel>(); 
await CoreMethods.PushPageModel<QuotePageModel>(null, true); // 弹出模态
await CoreMethods.PushPageModel<QuotePageModel>(pm => pm.Quote = "Quote 23"); 

自定义导航

通过实现 IFreshNavigationService 接口,你可以完全自定义导航逻辑。

注册服务

依赖注入的注册与解析:

FreshIOC.Container.Register<IDatabaseService, DatabaseService>();
IDatabaseService dbService = FreshIOC.Container.Resolve<IDatabaseService>();

页面模型方法

每个PageModel都有一系列的方法,如:

public FreshBasePageModel PreviousPageModel { get; set; }
public Page CurrentPage { get; set; }
public IPageModelCoreMethods CoreMethods { get; set; }
public virtual void Init(object initData) {}
public virtual void ReverseInit(object returndData) {}

总的来说,FreshMvvm 是一个既强大又简洁的Xamarin.Forms MVVM解决方案,无论你是新手还是经验丰富的开发者,都可以从中受益。现在就开始使用它来构建你的下一个Xamarin.Forms应用吧!

项目地址:https://gitcode.com/rid00z/FreshMvvm

  • 18
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

黎杉娜Torrent

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

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

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

打赏作者

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

抵扣说明:

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

余额充值