写点什么

Flutter:Google 工程师开发的针对 iOS 和 Android 的高性能跨平台框架

  • 2015-11-24
  • 本文字数:958 字

    阅读完需:约 3 分钟

Google 工程师开发了一款针对 iOS 和 Android 的高性能跨平台框架——Flutter。它主要使用 Dart 语言编写,使用自有的渲染引擎来绘制控件,性能上专注于低延迟输入和高帧率,旨在帮助开发者开发高新能的跨平台 2D 移动应用。

需要特别指出的是,在 2013 年,Google 曾发布了一个手势识别的项目也叫 Flutter,这两个项目并无任何关联。

Flutter 是开源项目,但目前还不是 Google 官方项目。在 GitHub Page 页面可以看到,它还处于非常早期的阶段,目前仅支持 iOS 和 Android 平台。另外,许多核心功能例如辅助功能、文本输入、本地化等等还处于缺失的状态中。

Flutter.io 中可以看到这么一段介绍:“Flutter 和其它跨平台移动应用开发框架非常不同,因为 Flutter 不使用 WebView,也不使用设备中的 OEM 控件。取而代之的是,Flutter 使用自己的高性能渲染引擎来绘制控件。”

重要通知:接下来 InfoQ 将会选择性地将部分优秀内容首发在微信公众号中,欢迎关注 InfoQ 微信公众号第一时间阅读精品内容。

Flutter 的早期项目代号为 Sky,这个项目包括一个支持文字的移动 2D 渲染引擎;一个 functional-reactive 框架;一组符合 Material Design 的控件、库和工具;一个 Atom 编辑器插件。当然,开发者仍然可以自定义控件。

Flutter 由 C、C++ 和 Dart 语言编写,也包含了 Skia 2D 渲染引擎和 Blink 的文本渲染系统。在 GitHub 中可以看到,开发人员在最近才由 Python 切换到了 Dart。Dart 语言是 Google 的 JavaScript 竞争对手,它被选来作为编写 Flutter 是因为它支持简单的脚本、扩展到全功能的应用和有一定的语言熟悉感。

对于 Android 平台来说,C/C++ 代码由 Android NDK(Native Development Kit)编译,这个框架和应用代码主要运行在 Dart 虚拟机中,此虚拟机将会在设备中生成 JIT 编译优化的本地代码;在 iOS 平台中,C/C++ 代码由 LLVM 编译,Dart 代码将由 AOT 编译成为本地代码。应用将使用一个本地指令集。Flutter 将不会有 Web 版本,目前也没有支持的可用的依赖注入框架。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者(已满),InfoQ 读者交流群(#2)InfoQ 好读者)。

2015-11-24 18:008290
用户头像

发布了 32 篇内容, 共 20.6 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

链表应用之设计高性能访客记录系统

架构师修行之路

数据结构 链表 架构师

可读代码编写炸鸡十 - 保持单纯

多选参数

代码质量 代码 代码优化 可读代码编写 可读代码

架构师训练营第十章总结

叮叮董董

Go make 和 new 的区别

曲镇

make Go 语言

Week 10

一叶知秋

关于微服务架构(中台架构、领域驱动设计、组件设计原则)的一点思考

jason

[翻译]分布式系统的模式-综述

流沙

架构 分布式系统

40张图入门Linux——(前端够用,运维入门)

执鸢者

Linux 大前端

socket通信,你还会实现么?

小隐乐乐

架构师训练营--第10周作业

Just顾

一文读懂GaussDB(for Mongo)的计算存储分离架构

华为云开发者联盟

数据库 mongodb 数据 GaussDB 存储分离

架构师训练营第十章作业

叮叮董董

第十周命题作业

赵龙

热乎的宇宙条总部面经,已拿offer,速来围观

我是程序员小贱

微服务与DDD学习总结

qihuajun

架构师训练营第十周作业

qihuajun

Newbe.Claptrap 框架如何实现 Claptrap 的多样性?

newbe36524

容器 微服务 .net core ASP.NET Core

Dubbo源码分析--dubbo-config配置层的套路

jason

腾讯一面面试官让我关闭连接

我是程序员小贱

有意思:Go函数的闭包

申屠鹏会

闭包 函数 Go 语言

troubleshoot之:使用JFR解决内存泄露

程序那些事

Java 内存泄露 性能调优

如何优雅的编写GO程序?

八两

优雅 语法 Go 语言

芯片破壁者(十一):回看日本半导体的倾塌

脑极体

六张图从HTTP/0.9进化到HTTP3.0

执鸢者

大前端 网络 HTTP

招银网络问了啥?这么尬?妥妥的安排

我是程序员小贱

我期待,这是个多彩的世界

瓜藤老祖

大三儿 乐队的夏天 九连真人

环信助力OFashion迷橙开辟海外直播带货新通路

DT极客

第十周学习总结

赵龙

远程办公暴露过程管理的不足

持续交付实践指南

管理 软件工程 远程办公

Code Review 失败后总结的几个实践技巧

Phoenix

团队管理 团队协作 技术人 代码质量

炸裂!40+图万字长文拿下HTTP

我是程序员小贱

计算机网络

Flutter:Google工程师开发的针对iOS和Android的高性能跨平台框架_移动_百占辉_InfoQ精选文章