Dart is All The Things.pptx

上传人(卖家):无敌的果实 文档编号:2527260 上传时间:2022-04-29 格式:PPTX 页数:46 大小:8.46MB
下载 相关 举报
Dart is All The Things.pptx_第1页
第1页 / 共46页
Dart is All The Things.pptx_第2页
第2页 / 共46页
Dart is All The Things.pptx_第3页
第3页 / 共46页
Dart is All The Things.pptx_第4页
第4页 / 共46页
Dart is All The Things.pptx_第5页
第5页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、Dart is All The ThingsDart & FlutterFlutter & Dart录Dart 全平台Dart 的另个亮点展望Dart & FlutterDart 初印象Dart 完全由 Flutter 带起来Dart & Flutter 的版本2011.102013.112018.82018.122019.22019.52019.102019.12Dart发布Dart 1.0 Dart 2.0 Dart 2.1Dart 2.2Dart 2.3Dart 2.6 Dart 2.72017.5Flutter第个版本 个预览版2018.6Flutter2018.122019.2201

2、9.52019.102019.12Flutter 1.0 Flutter 1.2 Flutter 1.5Flutter 1.9 Flutter 1.12Flutter & DartDart 和 Flutter 的发版节奏基本同步Dart 已经和 Flutter 绑定Flutter 为什么选择 Dart ?汉语、英语等影响思考的式影响解决问题的法Flutter语Java、JavaScript编程语为什么?DartFlutter 为什么选择 Dart ?Dart 同时持 AOT 和 JITAOTJIT预先编译Ahead-Of-Time( )实时编译Just-In-Time( )AOT 与 JIT

3、的发展编译型语编译成机器码C+AOT解释型语运在解释器上JavaScriptJavaJITJS RuntimeJavaVirtualMachine半个AOTJITAOT & JIT开发速度 跨平台 性能C+AOT慢中快中中低Java半个AOT & JITJITJavaScriptAOT & JITAOT 性能、跨平台好,但是开发速度慢JIT 开发速度快、跨平台好,但是性能差现代语多采混合编译式以达到 性能、跨平台、开发速度 的最佳结合Dart 就是这样的语,所以 Flutter 选择了 DartAOT & JIT性能跨平台编译成机器码运在 ARM & X64AOTDartHot Reload代

4、码即时效不需要再编译Dart 编译成 Kernel binary运在 Dart VM 上JIT开发速度Dart 是唯个持严格的 AOT 和 JIT 的编程语Flutter & DartFlutter 对 Dart 的影响Flutter 也在 促进 Dart 不断发展Flutter 对 Dart 的影响使 Dart 成为对 UI 最友好的语Dart is a client-optimized languageOptimized for UI写 UI 的流程写 UI获取数据数据与 UI 绑定声明式 UI代码写 UI代码的嵌套表示 UI 的层级命名参数和数组spreadspread operator

5、collection ifcollection forspread operator & collection if & collection for觉得没有?UI 上可以实现简单逻辑实现了 UI 和 Dart 语法完美融合获取数据络磁盘异步操作Future/async/awaitIsolate数据库IsolateDart 的 Isolate 是单线程但是单线程如何实现性能?Isolate 的组成私有内存没有锁的问题 GC较快+个线程+Event LoopIsolateEvent LoopEvent-loopMicrotask queue 内部事件:系统内部Future.microtask外部

6、事件:Event queueI/O gesturedrawingtimersfuturesasyncEvent-loopEvent-loop先运同步代码后运异步代码FutureFuture代表需要延迟计算的对象async/await把异步代码写成同步代码的样,更好理解Isolate & asyncFuture findPrimeCount(int num) async int primeCount = 0;for (int i = 1; i = num; i+) int divideCount = 0;for (int j = 1; j = i; j+) CPU BoundIO Boundif

7、 (i % j = 0) divideCount+;if (divideCount = 2) primeCount+;return primeCount;Isolate & asyncCPU 密集型IsolateasyncIO 密集型数据与UI绑定MVC/MVP/MVVMUI(标记语)数据(平台语)WidgetUI 和 数据直接绑定Widget(Dart)数据(Dart)ViewModelDart 全平台Dart 的另后台PCWEBDart for backendhttp_server持 HTTP 的 dart:io 库异步编程Dart for backend所有端的语致但是,毕竟客户端和后台

8、解决的问题是不样的思路也会差很很有潜,但是实起来会较困难Dart 的另个亮点dart:ffi 与 C 交互import dart:ffi as ffi;typedef hello_world_func = ffi.Void Function();typedef HelloWorld = void Function();final dylib = ffi.DynamicLibrary.open(hello_world.dylib);final HelloWorld hello = dylib.lookupffi.NativeFunction(hello_world).asFunction();为什么需要极致性能?总结声明式 UIspread operator & collection if & collection for异步持:Isolate & EventLoop & Future & async & awaitDart for backenddart:ffi展望2019 Github 语排榜Dart 展望我也法预测未来会怎样但是我建议家都去学新语,如 Dart

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 常用办公文档
版权提示 | 免责声明

1,本文(Dart is All The Things.pptx)为本站会员(无敌的果实)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|