加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flutter简述

发布时间:2020-12-14 14:54:31 所属栏目:百科 来源:网络整理
导读:Flutter是Google移动UI框架,用以创建高质量的native接口,真正跨平台,同时在iOS和Android上运行。Flutter是免费开源的,全球开发者及组织均可以使用。 Flutter有又几个特点: 快速开发 毫秒级的热加载快速地将修改应用到app。使用丰富的可完全自定义的组件

Flutter是Google移动UI框架,用以创建高质量的native接口,真正跨平台,同时在iOS和Android上运行。Flutter是免费开源的,全球开发者及组织均可以使用。

Flutter有又几个特点:

  1. 快速开发

    • 毫秒级的热加载快速地将修改应用到app。使用丰富的可完全自定义的组件在几分钟内就可以构建native界面。
  2. 极具表现力,灵活的UI

    • 快速地将特性集中到native终端用户体验。利用分层结构可以完整地自定义UI,进而完成快速绘制及灵活的设计。
  3. native性能

    • Flutter组件包含了所有平台的关键差异,例如滚动,导航,图标和字体。使得Flutter在iOS和Android上使用可以获得完全的native性能体验。

快速开发

Flutter热加载技术有助于你快速且简单地进行试验,构建UI,增加特性,并且快速修复bug。体验不到一秒的重新加载体验。

漂亮的UI

Flutter内置MD设计风格及iOS组件,更有丰富的手势API,流畅的滚动体验和平台认同感会让用户感到愉悦。

查看组件

现代的响应式框架(Modern,reactive framework)

利用Flutter响应式框架和丰富的平台,布局和功能组件是的UI构建非常简单。使用灵活并且强大的API(2D,动画,手势,性能等)可以解决在UI上各种问题。

class CounterState extends State<Counter> {
  int counter = 0;

  void increment() {
    // Tells the Flutter framework that state has changed,// so the framework can run build() and update the display.
    setState(() {
      counter++;
    });
  }

  Widget build(BuildContext context) {
    // This method is rerun every time setState is called.
    // The Flutter framework has been optimized to make rerunning
    // build methods fast,so that you can just rebuild anything that
    // needs updating rather than having to individually change
    // instances of widgets.
    return new Row(
      children: <Widget>[
        new RaisedButton(
          onPressed: increment,child: new Text('Increment'),),new Text('Count: $counter'),],);
  }
}

查看组件及学习更多有关reactive framework

使用native特性和SDKs

我们使用平台APIs,第三方SDKs和native代码开发APP。Flutter可以让你在iOS和Android继续使用Java,Swift,Objective-C代码并且使用native特性。

访问平台特性很简单。下边的代码片段开始:

Future<Null> getBatteryLevel() async {
    var batteryLevel = 'unknown';
    try {
        int result = await methodChannel.invokeMethod('getBatteryLevel');
        batteryLevel = 'Battery level: $result%';
      } on PlatformException {
        batteryLevel = 'Failed to get battery level.';
      }
      setState(() {
        _batteryLevel = batteryLevel;
      });
}

学习如何使用包(packages),或者写platform channels,使用native代码,APIs和SDKs。

统一的开发标准

Flutter拥有工具及库帮助你简单快速地在iOS和Android上实现你的想法。若你还没有任何移动开发经验,那么Flutter将会是你构建漂亮的移动APP的一种简单快速的额方式。若你是有经验的iOS或者Android开发人员,那么你可以使用Flutter组件,并且继续使用已有的Java/Objective-C/Swift程序。

  • 构建
    • 漂亮的APP UI
      • 丰富的2D GPU加速APIs
      • 响应式框架
      • 动画/动作 APIs
      • 兼容Android Material组件及苹果组件样式
    • 流程的编码体验
      • 急速热加载技术
      • IntelliJ:重构,自动补足功能等
      • Dart语言及核心库
      • 包管理
    • 拥有App所有特性
      • 与移动OS APIs&SDKs互操作性
      • Maven/Java
      • Cocoapods/ObjC/Swift
  • 优化
    • 测试
      • Unit测试
      • 继承测试
      • 无设备测试
    • Debug
      • IDE debug
      • 基于网络debug
      • 异步/唤醒感知
      • 表达式求值程序
    • 配置
      • 时间线
      • CPU和内存
      • 应用性能图标
  • 部署
    • 编译
      • Native ARM程序
      • 消除无效代码
    • 发布
      • App市场
      • Play Store

可以在技术概览了解更多Flutter的特殊性。

原文地址

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读