Flutter vs React Native-您需要知道的。 – openGeeksLab的Dmytro Dvurechenskyi

Flutter vs React Native-您需要知道的。

先进的工具不时需要现代流行的移动应用程序来实现它们。 因此,专业开发商努力满足这一领域的实际市场需求。 最有趣,最有用的创新成为讨论的主题。

React Native跨平台于2015年在GitHub上作为开源发布,结合了Android和iOS本机API。 尽管它具有无可置疑的好处,但是我们可以肯定的是,您一定听说过另一种有趣的,不寻常的编程方法-Flutter,它是Google对标准技术的高级答复。 这个新的用户界面于2017年启动,旨在在创纪录的时间内制作iOS和Android版本上的高质量本机应用程序。

什么是颤振?

Flutter是Google对React Native的回应,我敢肯定您一定听说过它。 在Flutter发布之后,各种移动开发社区开始进行比较讨论,其中“ React Native或Flutter”是使用JavaScript开发跨平台移动应用程序的最佳框架。 但是,这很容易。

Flutter允许Google开发人员同时使用完全相同的代码同时为iOS和Android构建应用。 对于Flutter来说,这听起来像是一次巨大的飞跃,但要赶上React Native仍然有很长的路要走。 目前,对React Native开发心存疑虑的开发人员甚至没有认真考虑Flutter。 尽管我相信Flutter可能是移动应用程序的未来。

关于Flutter的5个快速总结:

–这是Dart语言。 说什么飞镖? !!! 那是大多数开发人员的反应。

–推荐的带有Flutter插件的IDE是Android Studio或Intellij Idea。

– Flutter具有Dart桥,应用程序较大,但运行速度更快。 与带有Javascript bridge的React Native不同。

– React Native和Flutter共享类似的范例,例如事件处理程序和类扩展。

– Flutter的动画和安装体验分别非常出色和流畅。

大多数人在初次熟悉Flutter时会问的问题是“它像React Native吗?”

为了回答这个问题,我们的开发人员Viktor Gavrilov驾驶Flutter旋转了一下,这是他的发现:

在添加软件包时:

在Flutter中,所有内容都会自动连接。 但是,在React中,某些本机模块是手动连接的。

我们通过内置的“程序包管理器”连接程序包,因此不必像通常那样通过Xcode CocoaPods,React Native链接进行连接,而是通过npm将程序包连接到RN。

我们添加到pubspec.yaml。 该包,我们之前在https://pub.dartlang.org/flutter中找到并执行以下命令:

“颤振包得到”

没关系,它是map_view或left_pad包,一切都准备就绪,没有问题!

Flutter的优点(优点):

  • 飞镖语言。 Dart — OOP,它相当冗长,但是那些使用Java / C#编写的人会很高兴地将目光投向Dart。
  • 与React Native相比,手动编写项目开始时的设置
  • 只需从git下载Flutter,做一个“ flutter doctor” ,它将告诉您系统中可能出现的问题。 然后在初步安装Flutter插件后从Android Studio或任何IDE创建一个项目,然后启动该项目。 就像React-Native中一样,还有一个热重装。
  • 对IDE的出色支持 (Android Studio,IntelliJ主意,VSCode)
  • 内置导航器。 在Flutter上创建了一个应用程序后,您可能会对它具有内置的Navigator感到惊讶。 您可以创建一条新路线而无需连接任何东西(与RN不同,在RN中需要连接任何本机导航包等);
  • 现成的数据管理解决方案。 即在Flutter中,这就是“一切都有小部件”。 有一个特殊的StatefulWidget,借助它我们可以管理小部件状态并动态更改它。

在Flutter(The Cons)的另一面:

发生的门槛很大。 由于使用Dart及其继承,多态性和所有OOP包子的事实,对于那些只学习JS或来自RN的人来说,这将很困难。

在RN之后, 没有一个我们都习惯的JSX 。 看一下Dart文件,其中没有对模板的划分,样式和数据的使用,它变得不愉快。

–造型很痛苦。 考虑到没有将样式,模板和控制器分离的事实,存在一个问题,即在描述组件时,我们还需要同时描述样式。

动画有点困难。 尽管它具有一些好的动画效果,但是与RN中的动画相比,动画更困难。

–优化。 在Fluter中,只有具有可更改(有状态)和不可更改(无状态)条件的小部件继承。 在React-Native中,我们可以管理生命周期。 同样,一个很大的缺点是缺少用于保存应用程序状态的工具,但是可以通过序列化当前状态来解决此问题。

最后,如果Flutter提出一种减少Dart上的代码编写,替换所有功能类声明以及JSX或XML作为小部件结构的描述的方法,它们将拥有美好的未来。

在适用于android-studio的Flutter插件上,您只需创建一个项目并编写即可,就像在JAVA中一样。

如果比较这两个平台,React Native会有更多的关注者和许多成功的应用示例,而其竞争对手则显示出潜在的有趣选择并提高了其地位。

您应该意识到没有通用的跨平台,并且需要考虑它们的所有可能性和局限性来选择理想的解决方案。

我们非常感兴趣您对本文提供的信息的想法。 请在评论部分显示您的观点。

#响应本机跨平台#反应本机移动应用程序#编程本机#响应本机的好处#颤振软件#响应本机移动应用程序

Facebook Linkedn Twitter 上关注我们 以获取更多新闻和智能解决方案。

任何问题? 随时 联系