何时使用Xamarin.Forms vs Xamarin Native?
我需要在Xamarin.Forms和Xamarin原生应用程序之间进行select。
我想与Xamarin.Forms作为UI代码将被共享。
那么Xamarin.Forms与Native相比有什么缺点?
除了Xamarin网站上显示的要点 ,您还应该考虑:
你的团队的背景
你的团队中有没有人有以前的Android或iOS本地编码经验(使用Java或Obj-C / Swift)? 这个经验在本地Xamarin中被重用,但是他们将不得不学习另一个在Forms中编码的平台。
如果他们对iOS / Android一无所知,但知道一些xaml,情况也是如此。 当然,Xamarin.Forms与WPF / Silverlight不同,但是知道xaml肯定会帮助我使用Forms。
性能
Xamarin表单仍然有一些问题,比如初始化时间。 你应该考虑这是否会成为你最终用户的问题。 我偶尔也会懒得等一段时间才能打开的仪表板应用程序,但是如果消息应用程序发生同样的情况,我也会生气。
交货时间
由于使用表单时代码共享较大,因此您可能希望加快交付速度。
你的应用程序的复杂性
考虑到以前的观点,使用表格,你可能会偶然发现一些显示塞尔的bug(毕竟这是一个非常新的技术),将会使时间增加。 在select之前考虑你的应用程序的复杂性。
Xamarin.Forms
优点
- 为所有平台创build一个UI
- 使用所有平台上可用的基本组件(如button,文本框,纺纱器等)
- 无需学习所有的原生UI框架
- 快速的跨平台开发stream程
- 自定义本机渲染器可以让您调整控件的外观和感觉
缺点
- 这仍然是一个新的框架,仍然包含错误
- 尤其是Windows RT还不稳定
- 有时候比直接访问本地控件要慢一些
- 自定义本机渲染器有边界,logging不完善
Xamarin.Android,Xamarin.iOS,Windows Phone,Windows RT
优点
- 为每个平台创build一个UI
- 轻松调整平台特定的UIfunction和组件
- 从您的用户界面中获得最大的收益
缺点
- 跨平台开发过程要慢得多
- 你需要学习所有原生的UI框架
- 您可能会导致重复的代码 (正如您以三种不同的平台特定方式描述几乎相同的用户界面)
除了Xamarin在https://xamarin.com/forms上说:;
哪种Xamarin方法最适合您的应用程序?
Xamarin.Forms是最好的:
- 数据录入应用程序
- 原型和概念validation
- 需要很less的平台特定function的应用程序
- 代码共享比自定义UI更重要的应用程序
Xamarin.iOS&Xamarin.Android最适合:
- 需要专业互动的应用程序
- 应用程序与高度抛光的devise
- 使用许多特定于平台的API的应用程序
- 自定义用户界面比代码共享更重要的应用程序
从Xamarin网站
Xamarin.Forms是最好的:
- 数据录入应用程序
- 原型和概念validation
- 需要很less的平台特定function的应用程序
- 代码共享比自定义UI更重要的应用程序
Xamarin.iOS&Xamarin.Android最适合:
-
需要专业互动的应用程序
-
应用程序与高度抛光的devise
-
使用许多特定于平台的API的应用程序
-
自定义用户界面比代码共享更重要的应用程序