7-王刚-Flutter在Now直播中的工程实践应用
•IDE直接集成Flutter产出模式 •快速方便集成 无法同步Dart代码 无法启动调试 Android IOS 工程化开发模式Ⅱ • Flutter工程集成NOW工程模式 • 修改NOW工程结构 • 将Dart代码与Native代码一起存放GIT • 修改编译脚本 • 支持断点调试 无法跨终端同步及维护Dart代码 工程化开发模式Ⅲ • Gradle/CocoaPods依赖管理 开发框架 ReBLoC框架: 控件使用InheritedWidget包装 1.减少树状结构的节点刷新。 2.避免setState泛滥 setState 通知 刷新界面 State need update 开发框架 ReBLoC框架: 控件使用InheritedWidget包装 1.减少树状结构的节点刷新。 2.避免setState泛滥 setState 通知 刷新界面 State0 码力 | 35 页 | 5.39 MB | 1 年前3Web的未来 新技术和新语言带来的改变
延伸到 Server 端 近两年:AMD、CommonJS 模块化标准 当前:正在制定 ECMAScript 6 标准 JavaScript 并不完美 JavaScript 并不完美 ● 程序结构不明显 ● 并非为性能设计的语言 ● 缺少一些基础功能的支持 ● 缺少统一的基础特性,共享复用难 变量提升(hoisting) var foo = 'top-level'; function 3. 执行效率高 4. 有机会成为 Android 内置的虚拟机,用来写手机 App 5. 可以用来写服务器后台程序 6. 可以写 Web 前端程序,在浏览器内运行 @蔡学镛 ● 结构化并且灵活的Web语言 ● 简单、有生产力 ● 适合从小型到大型的项目 ● 高性能、快速启动 ● 适合各种设备的Web环境 Dart 语言的目标 Dart 语言的组成 ● 语言规范 ● map tree shaking minification Dart2js Tree-shaking ● 语言的设计影响性能 ● 使用snapshot启动速度快10倍 ● 运行时不能改变对象结构有利于VM优化 ● Dart VM 性能已超越 JavaScript V8 ● …… 高性能 性能测试 http://www.dartlang.org/performance/ Dart0 码力 | 91 页 | 3.44 MB | 1 年前3Flutter在百度贴吧的落地实践
矩阵产品 贴吧 贴吧极速版 创新产品 公司其他产 品 业务模块 一键签到 吧资料 粉丝列表 … 系统层 Android iOS FlutterSDK 基础 框架 模块通信 状态管理 公共结构 通用UI 混合栈 网络 图片 视频 日志 全局数 据同步 插件 FlutterWeb 目录 n 为何引入Flutter n 实践之旅 Ø 技术全景 Ø 工程体系接入 Ø 业务框架升级0 码力 | 36 页 | 14.75 MB | 1 年前3
共 3 条
- 1