Flutter在腾讯在线教育上的实践之路

随着大前端技术的不断发展,跨平台框架也在不断更新中,Flutter将响应式视图的优点带到了移动应用程序。但Flutter做为跨平台SDK,如何更加高效友好的与Native和Web进行交互,是咱们一直须要思考的问题。
前端

腾讯在线教育团队是Flutter技术的践行者之一。咱们在多款产品的手机端,Pad端尝试Flutter技术。咱们深刻Flutter底层,优化内存首屏等基础性能,尝试Flutter For Web、动态更新,致力于将最好的体验带给用户。本次TWeb大会,涂金林老师将介绍腾讯在线教育Flutter的开发实践经历,干货满满。下面咱们收集了部分粉丝比较关注的问题,让金林老师帮咱们一一解惑,更多干货敬请期待TWeb大会《Flutter在腾讯企鹅辅导上的实践之路》议题。web


Q&A浏览器

图片


1网络


Q:

请介绍下Flutter?跟APP原生开发以及其余hybird方案对比,有什么优点?架构

A:

Flutter是谷歌的移动UI框架,能够快速的在iOS和Android上构建高质量的原生用户界面。随着Flutter生态的不断完善,Flutter已经可以支持Web,Desktop及嵌入式开发。
app

相比与其余Hybird方案,Flutter并无使用WebView、JavaScript解释器或者系统平台自带的原生控件,而是有一套本身专属的Widgets,界面开发使用Dart语言,底层渲染则是使用自身的高性能引擎来绘制。不只能够保证iOS和Android平台的UI一致性,并且能够达到原生应用同样的性能。框架



2ide


Q:

请介绍下腾讯在线教育的Flutter架构?布局

A:

图片

腾讯在线教育Flutter实践目前已应用于多个产品,同时包括iPhone、Android和iPad等多个平台。平台总体使用MJFlutter SDK快速接入。上层基于Flutter,封装Toast、RefreshListView等通用组件。为了增强与Native通讯的独立和扩展性,中间通道层分为专有和通用通道。专有通道为页面导航、数据请求等基础功能提供交互支持,通用通道按模块对业务数据进行分发。底层复用Native已有能网络请求、存储等功能,保证Flutter的快速接入和上线。性能


3


Q:

请分享下在实践过程当中,遇到什么样的坑并如何解决?Flutter web是否能够应用到生产环境中,效果如何?

A:

腾讯在线教育团队近期在实现Flutter转Web的能力,不少场景下使用到dart: io这个与Native交互的库,这部分页面的代码没法直接转换成Web侧代码。Flutter For Web最终会将Dart代码转换成JavaScript,而后在浏览器中运行,网络请求、Native通讯须要咱们从新实现。终端和Web同窗的通力合做,保证了咱们的实践高效并且稳定。

目前Flutter For Web,官方并不推荐使用到生产环境中。但实际上,咱们以及公司的一些团队已经开始部署Flutter For Web的相关技术及配套能力。


4


Q:

对于Flutter将来的展望

A:

Flutter做为移动跨平台的UI开发框架,这几年已经变得煊赫一时。版本迭代快,功能完善全,社区支持高。Google官方每一年都会屡次推广和宣传Flutter技术,民间的分享交流也愈来愈多。相信在将来Flutter完善热更新的能力,全面布局Web、Desktop等多个平台后,必将是一场伟大的革命。





TWeb前端大会购票


为了让更多前端爱好者参与这场精心准备的开发者大会,大会提供线下票和线上票两种票型,还能够关注官网,有更多精彩福利活动等着你们哦,机不可失,失再也不来。


> 线下票(现场)

购买现场票的观众将能够前往现场,得到与讲师近距离接触以及面对面交流的机会

购票地址:

https://www.bagevent.com/event/6069372#website_moduleId_757725

图片

  • 可现场参加本次会议,得到与各位讲师专家交流的机会;

  • 全部分会场都可以参加,可自由选择分会场不一样的议题;

  • 特点茶歇点心,互动小礼品等;

相关文章
相关标签/搜索