【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Flutter 1.0 重磅发布,除了移动它还想做桌面和 Web 开发

  • 2018-12-05
  • 本文字数:2047 字

    阅读完需:约 7 分钟

Flutter 1.0重磅发布,除了移动它还想做桌面和Web开发

今天,在 Flutter Live 上,Google 宣布 Flutter 1.0 正式发布。此外,谷歌还宣布和 Square 等公司合作开发一系列新的第三方集成工具和一些新功能,目的是使 Flutter 与现有应用程序的集成变得更加容易。

Flutter 的使用现状

自 Flutter 在 2017 年 I/O 大会推出以来,就吸引了很多移动开发者的目光。今年 6 月底,Flutter 预览版发布的时候,Google 宣布与阿里巴巴的闲鱼团队在 Flutter 上合作,标志着 Flutter 进入了一个新阶段。


而目前在 Google 内部,Flutter 已经用于各种各样的产品中,如 Google Ads 的 iOS 和 Android 版应用已经用了 Flutter 框架。


据 Google 的不完全统计,目前,Abbey Road Studios、阿里巴巴、Capital One、Groupon、Hamilton、京东、Philips Hue、Reflectly 和腾讯等公司都已经使用 Flutter 进行开发。

Flutter 的重要特性

  • Flutter 可以让你构建漂亮的应用程序,它提供了很多 widgets,可以实现 Material Design。

  • 速度快,它基于 Skia 2D 硬件加速图形引擎,该引擎也同样用在了 Chrome 和 Android 平台。

  • 高效,Flutter 引入了热重载,这个革命性的特性可以让移动开发者和设计师们实时迭代应用程序,据了解,这个特性让开发效率提升了 3 倍。

  • 开放,Flutter 是一个基于 BSD-style 许可的开源项目,全球范围内数百位开发者在为它贡献代码。


更多 Flutter 详细的性能可戳此文:为什么说Flutter是革命性的?

Flutter 1.0 的新功能

自第一个测试版以来,Google 一直致力于为 Flutter 添加新功能和改进。特别是通过新的小部件完善了对像 iOS 应用程序的支持,增加了对近二十种 Firebase 服务的支持,并致力于提高性能和减少 Flutter 应用程序的大小。他们还根据社区的反馈解决了数千个问题。

Dart 2.1

Flutter 包含了最新版本的 Dart 2.1,更小的代码体积,更快的类型检查,以及更好的类型错误可用性。Dart 2.1 还提供了新的语言特性,可在构建用户体验时提高效率。


1.0 版本的侧重点是错误修复和保持稳定性,不过 Google 还推出了两个主要预览新功能,开发人员可以在预览模式下试用,预计将在 2019 年 2 月版本中发布:添加到 App 和平台视图。

添加到 App

在刚开始构建 Flutter 时,Google 专注于提升从头开始构建新应用程序的效率。当然,并不是每个人都有机会从头开始构建新应用。一些大公司希望可以将 Flutter 用于开发现有应用程序中的新功能,或者将现有应用程序分阶段切换到 Flutter。


Flutter 的架构可以很好地支持这种模型:毕竟每个 Flutter 应用程序都包含了一个 Android 和 iOS 容器。Google 也一直在努力让用户可以通过更新现有应用程序的模板和工具来逐步采用 Flutter。他们让在 Flutter 和宿主代码之间共享资产变得更容易。Google 还重新设计了工具,以便在不启动调试器的情况下轻松连接到现有的 Flutter 进程。

平台视图

添加到 App 是一种将 Flutter 逐渐引入到现有应用程序的方法,但有时需要反过来将一个 Android 或 iPhone 平台控件嵌入到 Flutter 应用程序中。


所以 Google 引入了平台视图小部件(AndroidView 和 UiKitView),让你可以在每个平台上嵌入这些东西。几个月来 Google 一直在预览对 Android 的支持,现在正在扩展到对 iOS 的支持,并开始添加基于这些小部件的Google MapsWebView等插件。



与其他组件一样,平台视图小部件可用于组合模型,这意味着你可以将它们与其他 Flutter 内容集成在一起。例如,在上面的屏幕截图中,右下角的浮动操作按钮是 Flutter 小部件,背景颜色为 50%alpha。这充分展示了 Flutter 独特的架构优势。

超越移动的 Flutter

到目前为止,Flutter 的主要目标是 iOS 和 Android。然而,Google 对 Flutter 的愿景是从移动设备扩展到更广泛的平台上。实际上,Flutter 从一开始就被设计为可移植的 UI 工具包,灵活到可以被用在任何基于像素绘制的地方。


其中的一些工作已经在进行中。Flutter Desktop Embedding是一个还处在早期阶段的项目,它将 Flutter 引入到桌面操作系统,包括 Windows、MacOS 和 Linux。他们最近还发布了在 Raspberry Pi 上使用 Flutter 的相关细节,演示了 Flutter 对嵌入式设备的支持。



Hummingbird 是基于 Web 的一个 Flutter 运行时实现,它利用 Dart 将 Flutter 代码编译为本机 ARM 代码或 JavaScript。这使得 Flutter 代码可以不经修改就能在 Web 上运行。


当然,移动仍然是 Google 的当务之急,你可以期待在未来几个月内看到他们对这些核心移动方案的巨大投入。

结论

随着 Flutter 1.0 的发布,除了现有的 beta、dev 和 master 频道之外,Google 还建立了一个新的“stable”频道,stable 频道的更新频率低于其他频道,他们预计将按季度更新 stable 频道。

相关链接

Flutter 1.0 地址:https://flutter.io


文档:https://flutter.io/docs


代码试验:https://flutter.io/docs/codelabs


示例:https://flutter.io/docs/cookbook


相关视频:https://flutter.io/docs/resources/videos


参考链接:


https://developers.googleblog.com/2018/12/flutter-10-googles-portable-ui-toolkit.html


更多内容,可关注前端之巅(ID:frontshow)



2018-12-05 11:026559
用户头像

发布了 731 篇内容, 共 433.7 次阅读, 收获喜欢 1997 次。

关注

评论 2 条评论

发布
用户头像
招人招人,字节跳动基础架构团队,打造字节跳动的无线基础设施。
http://www.newsmth.net/nForum/#!article/Career_Plaza/1478841
2018-12-15 23:41
回复
没有更多了
发现更多内容

SpringBoot 实现大文件视频转码(转码基于FFMPEG实现)

Java 程序员 后端

springboot-注解汇总,Java自学宝典下载

Java 程序员 后端

Springboot实现防重复提交和防重复点击(附源码),java高级编程实验一

Java 程序员 后端

springboot文件上传下载实战 ——文件上传,nginx架构模型

Java 程序员 后端

SpringCloud SpringBoot 前后端分离企业级微服务架构源码赠送

Java 程序员 后端

SpringCloud学习之【NACOS实现服务的注册与发现】,kafka基础原理

Java 程序员 后端

Spring JdbcTemplate简介,java高级开发面试总结

Java 程序员 后端

Spring Security账号密码认证源码解析,java项目开发全程实录第四版视频

Java 程序员 后端

SpringBoot初始化几大招式,看了终于明白了,Java高级程序员面试集合

Java 程序员 后端

SpringBoot自动配置原理及手动实现自动配置,35岁程序员半月4轮面试

Java 程序员 后端

Spring+SpringMVC+MyBatis整合,想拿高工资

Java 程序员 后端

springboot 整合 thymeleaf,Java校招面试指南

Java 程序员 后端

SpringCloud-Gateway动态路由之Nacos,BATJ等企业Java面试知识分享

Java 程序员 后端

SpringCloudRPC调用核心原理:RxJava响应式编程框架,观察者模式

Java 程序员 后端

Spring Cloud Gateway实战之二:更多路由配置方式,阿里面试java准备

Java 程序员 后端

Spring+MySQL+数据结构,mybatis懒加载的原理及实现

Java 程序员 后端

SpringBoot-整合HikariCP连接池,java三层架构登录功能实现

Java 程序员 后端

springCloud学习三之Eureka健康检查,java开发api接口教程

Java 程序员 后端

SpringBoot:定制-Actuator,深入java虚拟机百度网盘

Java 程序员 后端

SpringBoot整合MybatisPlus实战动态SQL,linux实用教程文东戈答案

Java 程序员 后端

springBoot集成Mybatis,linux系统编程手册pdf百度云

Java 程序员 后端

Springboot+MybatisPlus高效实现增删改查,mysql使用教程图解目录

Java 程序员 后端

SpringBoot 实现大文件视频转码(转码基于FFMPEG实现)(1)

Java 程序员 后端

SpringBoot2-----异常处理,快手支付中台java面试题

Java 程序员 后端

SpringBoot技术实践-SpringRetry重试框架,贼厉害

Java 程序员 后端

SpringCloud 学习总结(思维导图),学习mysql基础教程

Java 程序员 后端

springcloud实战:服务间通信—,java系统开发教程

Java 程序员 后端

springcloud服务与服务之间的调用(Feign),java支付模块架构

Java 程序员 后端

Spring 基于 xml 配置的快速入门(超详细),数据库事务深入分析

Java 程序员 后端

spring-boot-route 使用aop记录操作日志,springboot入门项目实战

Java 程序员 后端

Spring--声明式事务控制,mysql索引教程

Java 程序员 后端

Flutter 1.0重磅发布,除了移动它还想做桌面和Web开发_移动_无明_InfoQ精选文章