首页 文章

何时使用Xamarin.Forms与Xamarin Native? [关闭]

提问于
浏览
140

我需要在Xamarin.Forms与Xamarin本机应用程序之间做出选择 .

我想使用Xamarin.Forms,因为UI代码也将被共享 .

那么与Native相比,Xamarin.Forms有什么缺点 .

3 回答

  • 40

    除了Xamarin网站上显示的points,您还应该考虑:

    Your team's background

    你的团队中是否有人曾经有过为Android或iOS原生编码的经验(使用Java或Obj-C / Swift)?这种体验在本机Xamarin中重用,但是他们必须学习另一个在Forms中编码的平台 .

    如果他们对iOS / Android一无所知但知道一些XAML,情况也是如此 . 当然Xamarin.Forms与WPF / Silverlight不同,但知道XAML肯定帮助我使用Forms .

    Performance

    Xamarin Forms仍然存在一些问题,例如初始化时间 . 您应该考虑这是否会对您的最终用户造成问题 . 我不愿意等待一段时间才能使用我偶尔打开的仪表板应用程序,但如果发送消息应用程序的话,我会生气 .

    Time until delivery

    由于使用表单时代码共享更大,因此您可能希望更快的交付时间 .

    Complexity of your app

    考虑到前一点,使用表单你可能会偶然发现一些显示停止错误(毕竟这是一项非常新的技术),这将使时间收益无效 . 在选择之前考虑应用程序的复杂性 .

  • 157

    Xamarin.Forms

    优点

    • 为所有平台创建一个UI

    • 使用所有平台上可用的基本组件(如按钮,文本字段,旋转器等)

    • 无需了解所有本机UI框架

    • 快速跨平台开发流程

    • 自定义本机渲染器使您能够调整控件的外观和感觉

    缺点

    • 它仍然是一个新框架,仍然包含错误

    • 特别是Windows RT尚未稳定

    • 它有时比直接访问本机控件慢

    • 自定义本机渲染器具有边界并且记录不足

    Xamarin.Android, Xamarin.iOS, Windows Phone, Windows RT

    优点

    • 为每个平台创建一个UI

    • 轻松调整平台特定UI功能和组件的能力

    • 从UI中获取最大值

    缺点

    • 跨平台开发过程要慢得多

    • 您需要学习所有本机UI框架

    • 您可能会导致代码重复(因为您在三种不同的平台特定方式中描述了几乎相同的UI)

    除了Xamarin在https://xamarin.com/forms上说:

    Which Xamarin approach is best for your app?

    Xamarin.Forms is best for:

    • 数据录入应用

    • 原型和概念证明

    • 需要很少平台特定功能的应用程序

    • 代码共享比自定义UI更重要的应用程序

    Xamarin.iOS & Xamarin.Android are best for:

    • 需要专门互动的应用

    • 具有高度抛光设计的应用程序

    • 使用许多特定于平台的API的应用程序

    • 自定义UI比代码共享更重要的应用程序

  • 128

    来自Xamarin Website

    Xamarin.Forms is best for:

    • 数据录入应用

    • 原型和概念证明

    • 需要很少平台特定功能的应用程序

    • 代码共享比自定义UI更重要的应用程序

    Xamarin.iOS & Xamarin.Android are best for:

    • 需要专门互动的应用

    • 具有高度抛光设计的应用程序

    • 使用许多特定于平台的API的应用程序

    • 自定义UI比代码共享更重要的应用程序

相关问题