paint-brush
跨平台应用程序开发有哪些新功能?经过@mobidev
556 讀數
556 讀數

跨平台应用程序开发有哪些新功能?

经过 MobiDev5m2023/08/01
Read on Terminal Reader

太長; 讀書

在用户优先考虑可访问性、企业创始人选择成本效益的世界中,跨平台解决方案不会失去其受欢迎程度。 Flutter 通过单个代码库为移动、Web 和桌面的本机编译应用程序提供构建块。 Microsoft 计划停止使用 Xamarin,让 MAUI 成为 .NET 开发人员的下一个选择。
featured image - 跨平台应用程序开发有哪些新功能?
MobiDev HackerNoon profile picture


在用户优先考虑可访问性、企业创始人选择成本效益的世界中,跨平台解决方案不会失去其受欢迎程度。然而,那些经历过跨平台应用程序开发的人都知道,一次编写、到处运行的概念更多的是一种营销虚构,而不是现实。那么,现代技术是否已经更接近这个目标了呢?让我们看一下您可能错过的一些跨平台应用程序开发趋势。


Flutter 正在占领市场

Flutter 通过单个代码库为移动、Web 和桌面的本机编译应用程序提供构建块。使用 Flutter 开发应用程序由于其易用性、快速的开发时间和出色的性能,成为开发人员的热门选择。因此,Flutter 成为最受欢迎的跨平台框架也就不足为奇了。斯塔斯塔


随着 Flutter 2.0 的发布,该技术扩展到 Web,并不断发展其跨平台能力。如今,Flutter 是希望构建渐进式 Web 应用程序 (PWA) 或单页应用程序 (SPA) 的团队的绝佳选择。这些工具不如利用智能手机或台式机的本机功能那么强大,但它们使创建可访问的应用程序变得更加容易。


比较跨平台框架显示了 Flutter 的优势以及多年来它如何不断改进。 Flutter 下一次功能更新的细节尚不确定。预计他们将发布新的 3D 模型渲染引擎。这可能会提高屏幕上有许多移动对象的应用程序的性能,并将 Flutter 的用例扩展到网页游戏。


React Native 放弃了桥的概念

React Native 多年来一直以其桥接架构而闻名。该桥允许 JavaScript 与本机代码进行通信并共享数据。


桥接方法有效,但它带来了一些性能权衡。 React Native 团队一直在研究桥接方法的替代方案。这项工作产生了一种新的架构,它放弃了桥接器,转而采用 JavaScript 接口 (JSI)。这使得 JavaScript 和 C++ 对象之间可以直接进行方法调用。原则上,这使得 JavaScript 代码能够更快、更直接地与应用程序的本机部分进行交互。


由于这些新的变化,开发人员将能够更加关注性能和灵活性。除此之外,团队还可以享受更精简的React Native 开发经验。尽管有这些优点,但值得注意的是,新架构尚未完全稳定,并且并非所有插件都受支持。因此,并非所有应用程序都可以切换到它。


MAUI 取代 Xamarin

多年来,Xamarin 一直是一个使用 .NET 堆栈在 C# 中开发跨平台应用程序的框架。 Xamarin 发展的下一步是 MAUI。 2024 年 5 月,微软计划停止使用 Xamarin,将 MAUI 用于跨平台应用程序开发,作为 .NET 开发人员的下一个替代方案。


MAUI 构建于 Xamarin.Forms 之上,是一种现代化的架构,旨在利用 .NET 6 的最新功能。这保证了更强大的性能、更高的可靠性以及与其他 .NET 工具的改进集成。 MAUI 还提供改进的调试、测试和部署支持。因此,团队会发现 MAUI 能够提高生产力,并且可以更快地完成项目。


一些开发人员表示 MAUI 尚未为大型应用程序做好准备。稳定性需要改进,但企业必须考虑 MAUI 的未来以及它是否适合他们。如果您希望在 .NET 堆栈中工作并且有一个简单的小型项目,那么没有什么可以阻止您的团队立即转向 MAUI。然而,更大、更复杂的项目可能是一个很好的指标,表明您的团队应该等待稳定性更新。


新兴技术的融合正在兴起

跨平台应用程序越来越多地与新兴技术集成。因此,应用程序变得更加先进和创新,并提供比以往更独特的体验。


尽管这些技术越来越流行,但并非所有技术都可以很好地与跨平台开发工具配合使用。例如,Android 和 iOS 设备使用不同的增强现实框架。这意味着跨平台技术无法保证平台无关的逻辑。当团队意识到 Android 和 iOS 智能手机的 AR 功能可能因硬件和软件而异时,这一点就显得尤为重要。创建两个单独的应用程序(一个用于 iOS,一个用于 Android)的选项仍然在生产力、成本效益和维护方面提供了更多优势。


与此同时,还有其他工具可以很好地支持跨平台应用程序开发,例如 人工智能和机器学习。


无障碍问题

移动应用程序最重要的组成部分之一是可访问性。确保残疾用户的公平访问可以与受众建立更紧密的联系,并提高用户保留率。不仅如此,许多国家/地区都有法规要求网站和应用程序具有某些辅助功能。这使得在创建跨平台应用程序时考虑可访问性变得更加重要。


对于团队来说,使用它可能会有所帮助移动无障碍测试。这将使您的团队能够了解真实用户如何与应用程序交互,并在进行更广泛的发布之前从一些受众那里获得反馈。


无障碍不仅仅适用于残疾人。让您的应用程序易于使用对于每个使用它的人来说都很重要。例如,视频的字幕和文字记录不仅可以帮助有听力障碍的人,还可以帮助喜欢观看无声视频的人。


下一步是什么?

对于许多企业来说,一次编写、随处运行是一种有吸引力的方法。对此类跨平台应用程序的需求意味着将继续开发更多工具以使该过程变得更容易。随着这些开发工具提供越来越多与本机应用程序相似的体验,选择跨平台方法的可能性就变得更大。举个例子,Flutter 在某些情况下已经非常接近原生应用程序的性能。


然而,初创公司和其他企业仍然应该质疑跨平台是否适合他们。例如,跨平台技术尚未准备好充分发挥 Android 和 iOS 上原生 AR 框架的潜力,而硬件功能的差异则证实了这一事实。随着时间的推移,这种情况可能会发生变化,跨平台将扩展到更多用例。


领先图片来源