Flutter是一个UI工具包,可使用一种编程语言和单个代码库来创建移动,Web和桌面构建快速,美观,本地编译的应用程序。它是免费和开源的。最初,Flutter是由Google开发的,现在由ECMA标准管理。 Flutter应用程序是使用Dart编程语言来编写创建应用程序。
Flutter的第一版于2015年在Dart开发者峰会上宣布。它最初被称为代号Sky,并且可以在Android OS上运行。 2018年12月4日,发布了Flutter框架的第一个稳定版本:Flutter 1.0。该框架的当前稳定版本是2019年10月24日的Flutter v1.9.1 + hotfix.6。
Flutter是什么?
通常,创建移动应用程序是一项非常复杂且具有挑战性的任务。有许多可用的框架,它们提供了开发移动应用程序的出色功能。为了开发移动应用程序,Android提供了基于Java和Kotlin语言的本机框架,而iOS提供了基于Objective-C/Swift语言的框架。因此,一般需要两种不同的语言和框架来开发Android和OS开发应用程序。如今,为了简化这种复杂性引入了一些框架,这些框架同时支持OS和桌面应用程序。这些类型的框架也称为跨平台开发工具。
跨平台开发框架能够编写一个代码,并且可以部署在各种平台(Android,iOS和桌面)上。它节省了大量的时间和开发人员的开发工作。有几种可用于跨平台开发的工具,包括基于Web的工具,例如2013年Drifty Co.的Ionic,Adobe的Phonegap,微软的Xamarin和Facebook的React Native。这些框架中的每一个在移动行业中都有不同程度的成功。最近,跨平台开发家族中引入了一个新框架,也就是本教程所说的,由Google开发的Flutter框架。
Flutter是一个UI工具包,可使用一种编程语言和单一代码库为移动,Web和桌面创建快速,美观,本地编译的应用程序。它是免费和开源的。它最初是由Google开发的,现在通过ECMA标准进行管理。 Flutter应用程序使用Dart编程语言创建应用程序。Flutter编程具有与其他编程语言(例如Kotlin和Swift)相同的若干功能,并且可以反编译为JavaScript代码。
Flutter主要针对可在Android和iOS平台上运行的2D移动应用程序进行了优化。我们还可以使用它来构建功能齐全的应用程序,包括相机,存储,地理位置,网络,第三方SDK等。
Flutter有什么与众不同?
Flutter与其他框架不同,因为Flutter既不使用WebView也不使用设备随附的OEM小部件。它使用自己的高性能渲染引擎来绘制小部件。 它还使用Dart编程语言实现了大多数系统,例如动画,手势和小部件,使开发人员可以轻松地阅读,更改,替换或删除内容。 它为开发人员提供了对系统的出色控制。
Flutter的特征
Flutter提供了简便的方法,以丰富的材料设计和小部件开始构建精美的移动和桌面应用程序。 在这里,我们将讨论Flutter开发移动框架的主要功能。主要特征如下:
开源:Flutter是一个免费的开源框架,用于开发移动应用程序。
跨平台:此功能使Flutter可以编写一次代码,进行维护并可以在不同平台上运行。它节省了开发人员的时间,精力和金钱。
热重载:只要开发人员在代码中进行更改,这些更改就可以通过Hot Reload即时看到。这意味着更改会立即在应用程序本身中可见。这是一个非常方便的功能,它使开发人员可以立即修复错误。
可访问的本机功能和SDK:通过Flutter的本机代码,第三方集成和平台API,此功能使应用程序开发过程方便快捷。因此,开发者可以轻松访问两个平台上的SDK。
代码量小:Flutter应用程序是由Dart编程语言开发的,它使用JIT和AOT编译来缩短总体启动时间,发挥作用并加速性能。 JIT增强了开发系统并刷新了UI,而无需花费太多精力来构建新的。
小部件: Flutter框架提供了小部件,这些小部件能够开发可定制的特定设计。最重要的是,Flutter有两套小部件:Material Design和Cupertino小部件,可在所有平台上提供无故障的体验。
Flutter的优势
Flutter满足了开发移动应用程序的自定义需求。 它还具有许多优点,在下面列出。
- 由于具有热重载功能,它可以使应用程序开发过程极其快速。 此功能使我们能够在更改后立即更改或更新反映的代码。
与其他移动应用程序开发框架相比,它提供了使用应用程序时更流畅,无缝的滚动体验,而没有太多的挂起或割伤,这使应用程序的运行速度更快。 - Flutter减少了测试时间和工作量。 众所周知,Flutter应用程序是跨平台的,因此测试人员不必总是在同一应用程序的不同平台上运行同一组测试。
- 它具有出色的用户界面,因为它使用了以设计为中心的窗口小部件,高级开发工具,高级API和许多其他功能。
- 它类似于反应式框架,开发人员无需手动更新UI内容。
- 由于其快速的开发过程和跨平台的特性,因此适合MVP(最小可行产品)应用程序。
Flutter的缺点
前面我们已经看到,Flutter具有许多优点,凡事都具有两面性,它也包含以下一些缺点:
- Flutter是一种相对较新的语言,需要通过维护脚本来提供持续集成支持。
- 它提供对SDK库的非常有限的访问,这意味着开发人员没有很多功能来创建移动应用程序。此类功能必须由Flutter开发人员自己开发。
- Flutter应用程序不支持浏览器,它仅支持Android和iOS平台。
- 它使用Dart编程进行编码,因此开发人员需要学习新技术。 但是,对于开发人员来说很容易学习。
Flutter的历史
Flutter是Google推出的免费开源UI软件开发套件。 它用于构建适用于Android,iOS,Windows和Web的应用程序。 Flutter的第一版于2015年在Dart开发者峰会上宣布。 它最初被称为代号“ Sky”,并且可以在Android OS上运行。 Flutter发布后,2017年5月发布了第一个Flutter Alpha版本(v-0.06)。
后来,在上海Google Developer Day的主题演讲中,Google于2018年9月发布了Flutter的第二个预览版,这是Flutter 1.0版本之前的最后一个重要版本。 2018年12月4日,在Flutter Live事件中发布了Flutter框架的第一个稳定版本,表示Flutter 1.0。 该框架的当前稳定版本是2019年10月24日的Flutter v1.9.1 + hotfix.6。
先决条件
在深入学习Flutter之前,您必须对Dart编程,Android Studio和Web脚本语言(例如HTML,JavaScript和CSS)有充分的了解。
易百教程移动端:请扫描本页面底部(右侧)二维码并关注微信公众号,回复:"教程" 选择相关教程阅读或直接访问:http://m.yiibai.com 。
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。