《HarmonyOS:领航者说》技术公开课来啦,大咖分享、实战解码,不容错过 了解详情
写点什么

Flutter 将成为未来 Ubuntu 应用程序的默认选择

  • 2021-03-09
  • 本文字数:1388 字

    阅读完需:约 5 分钟

Flutter 将成为未来 Ubuntu 应用程序的默认选择

未来 Flutter 将成为 Canonical 创建的移动和桌面应用程序的默认选择。


3 月 3 日,Google 发布了 Flutter 2,众多更新功能引起了开发者的广泛讨论。Flutter 虽然是以 Dart 语言为基础,但是新版本中的桌面支持已经允许开发者将 Flutter 源代码编译为原生 Windows、macOS 或 Linux 桌面应用程序,并能够与桌面操作系统很好地集成。


Ubuntu 的发行商 Canonical 是 Flutter 的狂热支持者。在 Google 刚刚宣布针对 Linux 的 Flutter 桌面支持时,Canonical 就组建了一支开发人员团队与 Google 的开发人员合作,将 Flutter 的最佳体验带给大多数 Linux 发行版,并对 Flutter 进行了重大投资。


近日,Canonical 的 Ubuntu 桌面团队开始使用 Flutter 重写即将推出的全新桌面安装程序的用户界面。在 Flutter Engage 会议中,Ubuntu 团队终于展示了其新安装程序应用程序的早期演示,这也是 Canonical 的第一个官方 Flutter 应用程序。


Ubuntu 桌面工程经理 Ken Vandine 在会议中表示:“Canonica 不仅启用了 Flutter for Linux,同时还将与 Flutter 团队合作,将 Flutter SDK 发布在 Snap Store 上。Flutter SDK 将以快照的形式发布,我们可以非常轻松地安装和设置开发环境,以便在 Ubuntu 上使用 Flutter 构建移动、Web 和桌面应用程序。Flutter 将成为 Canonical 创建的未来移动和桌面应用程序的默认选择。



除了新安装程序,Ubuntu 桌面工程经理 Ken Vandine:“Flutter 还将为预装 Ubuntu 的设备提供开箱即用的体验,同时 Ubuntu 团队将致力于在所有桌面平台上为 Flutter 提供全面的多窗口支持。开发者可以使用其提供的丰富的 Windows 类型工具箱,来创建有效的 UI 平台。”

Flutter 会为桌面应用程序带来大变化吗?


很早之前,就有人预测:“桌面下一个巨大变化一定是 Web 技术带来的。”但事实上,我们现在也没看到这个预测的实现。


Electron 应用程序可能是最接近这个预测的了。与 Flutter 一样,Electron 应用程序很受 Web 开发人员欢迎,因为它们更易于学习,构建速度更快,并且与开发者现有的技能也很契合。但是桌面用户并不是很看好 Electron,他们认为 Electron 应用程序性能差、不集成或不支持桌面功能、外观与传统应用程序也有明显“不同”。


而 Flutter 很好地消除了 Electron 应用程序的缺陷。它拥有更好的性能,允许开发者使用“模仿”其他系统 UI 的 Web 样式,例如为 iOS 构建的 Flutter 可以使用很多仿照 iOS 原生 UI 的部件。


当然,Flutter 虽然和 Electron 应用程序不同,但是它也因为存在某些缺陷,导致其无法在开发者之间得到广泛应用。比较突出的缺陷是,Google Flutter Gallery 中的所有示例几乎都不如原生应用程序,不仅使用感受不一样,甚至外观看起来也不同,即使你是在尝试模仿特定系统的外观。


很多时候都是细节决定成败,用户界面交互滞后、文本不规范等等都会让开发者不再使用这个工具。为了规范和统一,Ubuntu 将 Yaru 引入到了 Flutter,使开发者的应用程序能够与 Ubuntu 独特风格相匹配。Flutter 的 Yaru 软件包可以应用 Ubuntu 样式、颜色和字体。



Flutter 会为桌面应用程序发展带来大变化吗?如果从目前的现状来分析,还是需要一段时间,新的 Ubuntu 安装程序也许会淘汰一些应用程序,但是更多的 Linux 应用程序还是继续由开发者使用“real”工具包和编程技术来开发。


参考链接:


https://www.omgubuntu.co.uk/2021/03/ubuntu-building-apps-with-flutter-in-future


2021-03-09 15:517851

评论

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

SRE运维解密-服务质量目标:SLI,SLO,SLA

董哥的黑板报

微服务 运维 云原生 SRE Google

电动汽车充电站的部署优化策略

乌龟哥哥

8月月更

SRv6网络典型部署场景

穿过生命散发芬芳

8月月更 SRv6

gulp 的常用 API

Jason199

js gulp 8月月更

Android 应用安全机制实现方案探究

No Silver Bullet

android 签约计划第三季 8月月更 安全机制

C++为什么始终无法取代 C 吗?

Jackpop

Docker基础:Docker 常用命令梳理

天使不哭

#开源 8月月更

头脑风暴:零钱兑换

HelloWorld杰少

8月月更

C++ 中的四种智能指针

桑榆

c++ 8月月更

Python 教程之输入输出(5)—— input() 函数中的漏洞 – Python 2.x

海拥(haiyong.site)

Python 8月月更

Kubernetes证书过期怎么玩

CTO技术共享

开源 签约计划第三季 8月月更

百家号打击挂载恶意导流链接行为,必须严厉打击恶意挂链灰产

石头IT视角

VS Code如何打造C/C++开发环境?

Jackpop

关于 SAP UI5 floating footer 显示与否的单步调试以及使用 SAP UI5 的收益

汪子熙

前端开发 SAP SAP UI5 ui5 8月月更

Kubernetes信息安全

CTO技术共享

开源 信息安全 Kubernetes 集群 签约计划第三季 8月月更

文本词频统计的利器 Trie树

Five

c 算法题 8月月更

Go-Excelize API源码阅读(一)——NewFile()

Regan Yue

Go 开源 源码刨析 8月月更

如何克服紧张

踏雪痕

一起学习集合框架之 TreeSet

宇宙之一粟

Java 8月月更

Kubernetes 实现灰度和蓝绿发布

CTO技术共享

开源 灰度发布 蓝绿发布 签约计划第三季 8月月更

Linux的难题,终于有解了!

Jackpop

Service Mesh迁移原则

阿泽🧸

Service Mesh 8月月更

Kubernetes故障排查eBPF

CTO技术共享

开源 ebpf 签约计划第三季 8月月更

钝感力与自我和解

Amazing_eve

#开源

系统管理-Linux重定向与管道

Albert Edison

Linux centos 运维 服务器 8月月更

开源一夏 | jQuery 密码验证和深入理解JSONP【前端jQuery框架】

恒山其若陋兮

开源 8月月更

Kubernetes Cilium展示

CTO技术共享

开源 cilium Kubernetes 集群 签约计划第三季

Kubernetes构建Redis 集群

CTO技术共享

redis 开源 签约计划第三季 8月月更

Kubernetes 调度器优化

CTO技术共享

开源 Kubernetes 集群 签约计划第三季

Kubernetes内存泄露怎么玩

CTO技术共享

开源 内存泄漏 签约计划第三季 8月月更

Kubernetes网络模型

CTO技术共享

开源 Kubernetes 集群 签约计划第三季 8月月更

Flutter 将成为未来 Ubuntu 应用程序的默认选择_大前端_田晓旭_InfoQ精选文章