介绍Flutter
Flutter是谷歌的移动UI框架,可以快速在IOS
和Android
上构建高质量的原生用户界面。Flutter
可以与现有的代码一起工作。在全世界,Flutter
正被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。
核心概念
-
跨平台
现在Flutter
至少可以跨5种平台,甚至支持嵌入式开发。我们常用的有MacOs
、Windows
、linux
、Android
、iOS
,甚至可以在谷歌最新的操作系统Fuchsia上运行。到目前为止,Flutter
算是支持平台最多的框架了,良好的跨平台性,直接带来的好处就是减少开发成本。
-
丝滑般的体验
使用Flutter
内置高大上的Material Design
和Cupertino
风格组件、丰富的motion API
、平滑而自然的滑动效果和平台感知,为用户带来全新体验。
-
响应式体验
使用Flutter
的响应式框架和一系列基础组件,可以轻松构建用户界面。使用功能强大且灵活的API(针对2D、动画、手势、效果等)能解决艰难的UI挑战。
-
支持插件
通过Flutter
的插件可以访问平台本地的API,如相机、蓝牙、WIFI等。借助现有的Java
、Swift
、Objective C
、C++
代码实现对原生系统的调用。
-
60fps超高性能
Flutter
采用GPU渲染技术,所以性能极高。Flutter
编写的应用是可以达到60fps(每秒传输帧数),这也就是说,它完全可以胜任游戏的制作。官方宣称用Flutter开发的应用甚至会超过原生应用的性能。
介绍Dart
Dart
诞生于2011年10月10日,谷歌Dart
语言项目的领导人Lars Bak在丹麦矩形的Goto会议上宣布,Dart
是一种“结构化的Web编程”语言,Dart
编程语言在所有现代浏览器和环境中提供高性能。
虽然是谷歌开发的计算机编程语言,但后来被ECMA
认定为标准。这门语言用于Web
、服务器、移动应用和物联网等领域的开发,是宽松源许可证(BSD证书)下的开源软件。
Dart
最新的版本是Dart 2
,Dart 2
是一款高效、简介、已通过实战检验的语言,能够应对现代应用程序开发的挑战。Dart 2
大大增强和精简了类型系统,清理了语法,并重建了大部分开发工具链,使移动和Web
开发变得更加愉快和高效。Dart 2
还融合了包括Flutter
、AdWords
和AbSense
等工具开发者对该语言早起使用的经验教训,以及针对客户反馈的成千上万大大小小的问题进行了改进。
Flutter和Dart的关系
Flutter
和Dart
有什么关系?确实有关系。早起的Flutter
团队评估了十多种语言才选择了Dart
,因为它符合构建用户界面的方式。
Dart
是AOT
编译的,编译成快速、可编译成快速、可预测的本地代码,使Flutter
几乎都可以使用Dart
编写。这不仅使Flutter
变得更快,而且几乎所有的组件(包括所有的小部件)都可以定制。
Dart
也可以JIT
编译,开发周期异常快,工作流颠覆常规(包括Flutter
流行的亚秒级有状态热重载)
Dart
可以更轻松构建60fps运行的流畅动画和转场。Dart
可以在没有锁的情况下进行对象分配和垃圾回收。就像JavaScript
一样,Dart
避免了抢占式调度和共享内存(因而也不需要锁)。由于Flutter
应用程序被编译为本地代码,因此不需要在领域之间建立缓慢的桥梁(例如,JavaScript
到本地代码)。它的启动速度也快得多。
Dart
和Flutter
不需要独立声明式布局语言(JSX
或XML
),或单独的可视化界面构建器,因为Dart
的声明式编程布局易于阅读和可视化。所有的布局使用一种语言,聚集在一处,Flutter
很容易提供高级工具,使布局更简单。
- 开发人员发现
Dart
特别容易学习,因为它就有静态和动态语言用户都熟悉的特性。
Material Design风格组件
Material Design
是由Google
推出的全新设计语言,这种设计语言旨在为手机、平板电脑、台式机和其他平台提供一致、更广泛的外观和感觉。Material Design
也称为纸墨设计,Material Design
风格是一种非常有质感的设计风格,并会提供一些默认的交互动画。
Demo
-
demo_1 简单的自我介绍
-
demo_2 微信界面模板
-
demo_3 时间界面