颤振简介

现在是成为移动开发人员的绝佳时机。 智能手机,平板电脑和智能手表已经成为我们生活中的重要组成部分,Android和iOS不断完善并在每个新版本中添加新功能。 出色的新框架可帮助开发人员更快,更可靠地构建应用程序,而Flutter当然就是这些框架之一。 Flutter是Google的新移动应用工具包,可在创纪录的时间内在iOS和Android上制作漂亮的本机界面。

我们可以针对移动平台开发的不同方式编写数百页的文章。 为了使它真正简短并简化很多工作,我们提供了三种主要的移动,原生,混合和Web开发方式。

本机

本机意味着我们使用本机官方工具,而今天,这意味着使用Java或Kotlin编码的Android Studio适用于Android,使用XCode的Swift或Objective-C适用于iOS。 带有支持语言的Android Studio和XCode都是经过尝试和测试的出色工具。 它们一推出便获得新功能。 他们本机使用所有设备功能来构建快速,高效的应用程序,但它们有一个主要缺点。 如果要同时为iOS和Android构建应用程序,则需要创建和维护两个应用程序,每个平台一个,并且需要至少了解两种语言。

网络应用

在另一端,我们有Web应用程序。 我们可以从浏览器访问它们,而Web应用程序使我们可以为移动和Web开发共享相同的代码。 这对于使用HTML,CSS和JavaScript的开发人员来说非常有用。 任何系统只有一个代码,易于使用,易于通过一个主要流程实现。 您无法使用设备的更多高级功能,并且用户可能会觉得您的应用不是真正的应用。 它实际上只是一个应用程序形式的网站。 即使有工具可以克服某些限制,但现在还不能解决所有限制。

杂种

还有第三种方式。 Xamarin,Cordova,Ionic,Reactive Native等工具(仅举几例)被称为混合工具。 它们每个都有其优点和缺点,但是所有这些框架都使我们能够使用单一的移动代码库来构建我们的应用程序。 他们通常使用某种形式的JavaScript,但使用C#的Xamarin除外。 它们中的大多数的问题是它们需要代码和移动操作系统之间的桥梁,并且其中一些性能远低于本机应用程序的性能。 不仅如此,在某些情况下,使用多个第三方库和组件及其兼容性问题的复杂性还会使开发人员的生活陷入噩梦。 当我说我去过那里时请相信我。

在混合类别中,谷歌认为可以提供一些附加功能。 第一个是Flutter可以将本机编译为出色的性能。 实际上,Flutter有两种不同的编译模型。 实时编译,可实时重新编译代码,从而实现硬重装。 这意味着当我们开发时,我们可以实时看到更改,而无需重新编译。 您编写代码,然后立即在设备或仿真器上看到结果。 然后我们可以提前进行编译。 将代码编译为本机手臂代码,以在任何设备上实现出色性能。

Flutter的创建旨在为开发人员提供快速的开发框架,并为用户提供出色的参与和快速体验。 当然,您将拥有适用于iOS和Android的单一代码库。 与其他混合框架的另一个区别是,使用Flutter,您在代码和设备之间没有桥梁,而这是另一个使Flutter在其竞争对手中脱颖而出的功能。 实际上,Flutter是一个非常年轻的框架。 它于2017年5月在Google I / O上发布了带有Alpha工具包的版本,在Google I / O 2018上发布了第三个Beta版本。 因此,据Google所说,Flutter已准备好用于生产应用程序。 即使已经准备好生产,将来也可能会发生一些重大变化。

当我们为Flutter开发时,我们使用一种叫做Dart的语言。 这是Google开发的一种强类型的面向对象编程语言。 如果您不认识Dart,请不要担心。 如果您熟悉C#,Java,Swift,TypeScript甚至JavaScript,那么Dart将完全没有问题。 您会发现它是直观且易于学习的。

那么在开始之前您需要了解什么? 那么,您需要了解任何面向对象的编程语言。 如果您了解变量,控制流,继承,类和对象,那么您就很好了。

您需要具备什么? 您可以将Windows PC,Mac或Linux框与您喜欢的文本编辑器一起使用(我个人更喜欢android studio)。 您还需要Android设备或模拟器,如果您使用的是Mac,则还可以使用iOS设备或模拟器。

目前为止就这样了。 我希望本文能为您提供有关Flutter的良好介绍。

  • Dart语言:https://www.dartlang.org/guides/language/language-tour
  • Dart软件包:https://pub.dartlang.org/