我想为所有平台构建一个应用程序,但是我想知道!
ionic-Framework和Xamarin.Forms和之间有什么区别,
为所有平台构建应用程序哪个更好?
答案 0 :(得分:2)
在熟练的工程师手中,Ionic和Xamarin都是出色的跨平台开发资产,与为两个或多个平台构建本机应用程序相比,这将节省您的业务时间和金钱。但是,关于使用哪个决定的任何决定都应严格评估您的需求,预算和发展目标。
如果将应用程序质量放在首位,则您正在与许多预先存在的.NET体系结构集成,并且/或者需要为各种平台和版本构建应用程序,Xamarin几乎肯定是最合适的选择。 / p>
对于预算有限的较小规模或较不频繁的项目,如果适用于iOS和Android设备的移动应用程序不那么引人注目,Ionic将为您提供快速有效的功能途径。
根据您的资源,以及您将内部开发应用程序还是在外部开发公司的帮助下,您甚至可能希望同时使用这两个流行的框架。两者的实施成本都不高,特别是自从Microsoft开始免费将Xamarin与Visual Studio Community Edition和Xamarin Studio(对于Mac)捆绑在一起。
答案 1 :(得分:1)
我认为这主要取决于您想要在应用程序中做什么。
如果您只想推送一些数据和图像(例如,创建一个商店平台),我看不到任何原因,为什么ionic不能胜任工作,并且您可能会看到更快的结果,因为尽管我认为选择xamarin不会使您花费X个月的时间,但您无需为进行大量的本地调整(例如文件系统访问等)而感到费解。
但是,如果要使用本机功能(例如相机,gps,传感器),无论您将如何使用离子api都将受到限制,而且我不知道在新功能出现之前,周转时间将有多长将来会出现在框架中。
从性能方面来说,如果html,css和javascript / jquery的组合与xamarin可以带给您的东西相当,我实在持怀疑态度,因为Xamarin实际上生产的应用程序可以与本机编写的应用程序竞争。
我不确定使用ionic可以使您“深入了解”,尽管我知道使用xamarin可以真正深入并开发可以使用目标平台的本机代码的功能。
实际上,通过查看用户群(或更确切地说,在堆栈溢出时的问题数量),人们可能会倾向于ionic比xamarin.forms拥有更多的问题,但是实际上并没有考虑到任何问题关于xamarin,xamarin.forms,xamarin.android,xamarin.ios和c#可能会提供相关的答案并为您即将出现的问题提供支持。公平地说,离子性在这里也有相当多的问答集,所以我认为这是平局。
我的结论是:如果您需要快速创建数据推送应用程序,则可以使用ionic,但是,如果您需要性能,本机方法并且希望能够使用特定本机功能,则Xamarin将为您打开这扇门为你。
免责声明:我已经使用Xamarin形式开发应用程序已有大约5年了,并且从未使用过ionic框架,因此我对ionic的了解仅限于我在摘要中阅读的内容。也许我的回答可能会忽略离子技术可能带来的特殊好处,我真的希望有经验的离子技术开发人员可以添加一些有益的东西。
但是,如果您在询问我的个人建议,我的答案将是:使用Xamarin
答案 2 :(得分:1)
大约18个月前,我们不得不回答这个问题。对于我们来说,核心问题是该应用程序是否也需要部署到Web环境中。在我们的案例中,我们需要在本机iOS / Android应用程序和网站中支持相同的功能(用于Web可以处理的功能)。在那种情况下,爱奥尼克无疑是赢家。
如果您不必担心网络,那么我认为Xamarin是一个不错的选择。我也将签出Google's flutter,这是一个较新的跨平台选项(同样假设不需要网络)。