何时使用Xamarin.Forms对Xamarin本地?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (53)

我需要在Xamarin.Forms和Xamarin原生应用程序之间进行选择。

我想与Xamarin.Forms一起去UI代码也将被共享。

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

提问于
用户回答回答于

你的团队的背景

你的团队中的任何人是否有以前使用Java或Obj-C / Swift进行Android或iOS本地编码的经验?这种体验在本地Xamarin中得到了重用,但是他们必须学习另一个在Forms中编码的平台。

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

性能

Xamarin Forms仍然有一些问题,比如初始化时间。您应该考虑这是否会成为您最终用户的问题。我不会花费一段时间来等待一段时间才能打开的仪表板应用程序,但如果消息应用程序发生同样的情况,我会生气。

交付时间

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

你的应用程序的复杂性

考虑到以前的观点,使用表格可能会让你发现一些展示塞尔的bug(毕竟这是一项非常新的技术),这将会缩短时间。在选择之前考虑你的应用程序的复杂性。

用户回答回答于

Xamarin.Forms

优点

  • 为所有平台创建一个UI
  • 使用所有平台上可用的基本组件(如按钮,文本框,Spinners等)
  • 无需学习所有原生UI框架
  • 快速的跨平台开发流程
  • 自定义本地渲染器可让您调整控件的外观和感觉

缺点

  • 这仍然是一个新的框架,仍然包含错误
  • 尤其是Windows RT尚不稳定
  • 它有时比直接访问本地控件慢
  • 自定义本地渲染器有边界,记录不完善

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

优点

  • 为每个平台创建一个UI
  • 轻松调整平台特定的UI功能和组件
  • 充分利用您的用户界面

缺点

  • 跨平台开发过程要慢得多
  • 您需要学习所有原生UI框架
  • 您可能会导致重复代码(正如您以三种不同的平台特定方式描述几乎相同的用户界面)

哪种Xamarin方法最适合您的应用?

Xamarin.Forms适用于:

  • 数据输入应用
  • 原型和概念验证
  • 只需要很少的平台特定功能的应用程序
  • 代码共享比自定义用户界面更重要的应用程序

Xamarin.iOS和Xamarin.Android是最好的:

  • 需要专业互动的应用程序
  • 高度抛光设计的应用程序
  • 使用许多特定于平台的API的应用程序
  • 自定义用户界面比代码共享更重要的应用程序

扫码关注云+社区