2019-2021 美团技术年货 前端篇applicationContext.getUITaskDispatcher().delayDispatch(() -> { float fps = 60; // 设备刷新帧率,HarmonyOS 未暴露获取帧率 API,先写死 60 帧 long refreshPeriodNanos = (long) (1000000000.0 / fps); long frameTimeNanos dart:ui(Web)的对齐,工程 化和性能相关的事项做的还比较少,例如: 前端 < 17 ● Flutter Web 构建产物较简陋,只是简单的输出 main.dart.js(1.1M,未 Gzip) 和 图片等静态资源,缺少 JS 拆包、文件 Hash、资源上传 CDN 等优 化工作,极大影响了页面的加载性能。 ● 由于 Flutter Web 自身实现了一套页面滚动机制,页面滚动过程中,会频繁计 本文系美团技术团队出品,著作权归属美团,未经允许,请勿转载或者用于其他商业用途。如 用作公益用途,请务必注明:内容转载自美团技术团队。任何商用行为,请发送邮件至 tech@ meituan.com 申请授权。 36 > 2021年美团技术年货 FlutterWeb 性能优化探索与实践 作者:典胜 海阔 徐亮 一、背景 1.1 关于 FlutterWeb 时间回拨到 2018 年,Google0 码力 | 738 页 | 50.29 MB | 1 年前3
[试读] Angular 5 高级编程edition copyright © 2018 by Tsinghua University Press. All rights reserved. 本书中文简体字版由 Apress 出版公司授权清华大学出版社出版。未经出版者书面许可,不得以任何方式 复制或抄袭本书内容。 北京市版权局著作权合同登记号 图字:01-2017-5757 本书封面贴有清华大学出版社防伪标签,无标签者不得销售。 .....103 6.4.2 使用元组 .........................109 6.4.3 使用可索引类型 ...............109 6.4.4 使用访问修饰符 ...............110 6.5 本章小结.................................111 第 7 章 SportsStore:一个真实的 .........327 15.1 准备示例项目 .......................328 15.2 创建简单的属性指令............330 15.3 在指令中访问应用程序 数据.......................................333 15.3.1 读取宿主元素属性 ........333 15.3.2 创建数据绑定输入0 码力 | 42 页 | 6.14 MB | 1 年前3
electron中文教程
4.ElectronTeamID 5.TEAM_ID 6. 7. 之后,你需要准备2个授权文件。 child.plist : 1. 2. 授权文件路径 13. CHILD_PLIST="/path/to/child.plist" 14. PARENT_PLIST="/path/to/parent.plist" 15. 16. F - 本文档使用 书栈(BookStack.CN) 构建 如果你是 macOS 下的应用沙箱使用新手,应当仔细阅读 Apple 的 Enabling App Sandbox 了解一些基础,然 后在授权文件 (entitlements files) 内添加你的应用需要的许可。 在签名应用之后,你可以使用 Application Loader 上传软件到 iTunes Connect 进行处理。请确保在上传之0 码力 | 203 页 | 2.72 MB | 1 年前3
Angular核心特性
大漠穷秋 2017-05-13拷贝并分享给你的朋友 Angular应用中路由形成的Tree形结构 Angular路由用法:静态路由 Angular路由用法:异步路由 Angular路由用法:路由守卫 防止未授权访问 第三块:Angular架构特色 依赖注入 依赖注入 Parent Injector Child Injector 注射器(Injector) 也是一个树型结构 依赖注入0 码力 | 52 页 | 2.50 MB | 1 年前3
[试读]Angular 应用安全编程集声明式模板、依赖注入、端到 端工具和一些最佳实践于一身,为你解决开发方面的各种挑战。Angular 为开发者提升构建 Web、手机或桌 面应用的能力。 i 前言 Web 应用程序的安全涉及到很多方面。针对常见的漏洞和攻击,比如跨站脚本攻击,Angular 提供了一 些内置的保护措施。 iii 目 录 序 i 前言 iii 第一部分 Angular 应用基础 1 第一章 核心知识 3 1.1 架构概览 JavaScript 中,每个文件是一个模块,文件中定义的所有对象都从属于那个模块。通过 export 关键字,模 块可以把它的某些对象声明为公共的。其它 JavaScript 模块可以使用 import 语句来访问这些公共对象。 架构概览 5 1.2 NgModule 和 JavaScript 的模块 NgModule 系统与 JavaScript(ES2015)用来管理 JavaScript 对象的模块系统不同,而且也没有直接关联。 块可以把它的某些对象声明为公共的。其它 JavaScript 模块可以使用 import 语句来访问这些公共对象。 JavaScript 模块 JavaScript 中,每个文件是一个模块,文件中定义的所有对象都从属于那个模块。通过 export 关键字,模 块可以把它的某些对象声明为公共的。其它 JavaScript 模块可以使用 import 语句来访问这些公共对象。 JavaScript 中,每个文件是一个模块,文0 码力 | 27 页 | 177.00 KB | 1 年前3
阮一峰 JavaScript 教程(3)事件驱动和非阻塞式设计。 JavaScript 程序可以采用事件驱动(event-driven)和非阻塞式 (non-blocking)设计,在服务器端适合高并发环境,普通的硬件就 可以承受很大的访问量。 JavaScript 是一种开放的语言。它的标准 ECMA-262 是 ISO 国 际标准,写得非常详尽明确;该标准的主要实现(比如 V8 和 SpiderMonkey 引擎)都是开放的,而且质量很高。这保证了这门语 版,规定了浏览器脚本语言的标准,并将这种语言称为 ECMAScript。这个版本就是 ECMAScript 1.0 版。之所以不叫 JavaScript,一方面是由于商标的关系,Java 是 Sun 公司的商 标,根据一份授权协议,只有 Netscape 公司可以合法地使用 JavaScript 这个名字,且 JavaScript 已经被 Netscape 公司 注册为商标,另一方面也是想体现这门语言的制定者是 ECMA,不是 与自身严格相等。 1. undefined === undefined // true 2. null === null // true 由于变量声明后默认值是 undefined ,因此两个只声明未赋值的变量是 相等的。 比较运算符 - 171 - 本文档使用 书栈(BookStack.CN) 构建 1. var v1; 2. var v2; 3. v1 === v2 // true0 码力 | 540 页 | 3.32 MB | 10 月前3
阮一峰 《ECMAScript 6入门》 第三版ECMAScript,这个版本就是1.0版。 该标准从一开始就是针对 JavaScript 语言制定的,但是之所以不叫 JavaScript,有 两个原因。一是商标,Java 是 Sun 公司的商标,根据授权协议,只有 Netscape 公司可以合法地使用 JavaScript 这个名字,且 JavaScript 本身也已经被 Netscape 公司注册为商标。二是想体现这门语言的制定者是 ECMA,不是 node --v8-options | grep harmony 上面命令的输出结果,会因为版本的不同而有所不同。 我写了一个工具 ES-Checker,用来检查各种运行环境对 ES6 的支持情况。访问 ruanyf.github.io/es-checker,可以看到您的浏览器支持 ES6 的程度。运行下面的 命令,可以查看你正在使用的 Node 环境对 ES6 的支持程度。 ECMAScript 标签模板的另一个应用,就是多语言转换(国际化处理)。 i18n`Welcome to ${siteName}, you are visitor number ${visitorNum ber}!` // "欢迎访问xxx,您是第xxxx位访问者!" 字符串的扩展 85 模板字符串本身并不能取代Mustache之类的模板库,因为没有条件判断和循环处理 功能,但是通过标签函数,你可以自己添加这些功能。 // 下面的hashTemplate函数0 码力 | 679 页 | 2.66 MB | 1 年前3
Hello 算法 1.1.0 JavaScript版仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读!” ——邓俊辉,清华大学计算机系教授 hello‑algo.com 14 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 初识算法 hello‑algo.com 15 图 1‑5 拼装积木 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。0 码力 | 379 页 | 18.46 MB | 1 年前3
Hello 算法 1.1.0 TypeScript版仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读!” ——邓俊辉,清华大学计算机系教授 hello‑algo.com 14 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 初识算法 hello‑algo.com 15 图 1‑5 拼装积木 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。0 码力 | 383 页 | 18.49 MB | 1 年前3
Hello 算法 1.2.0 简体中文 JavaScript 版仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 www.hello‑algo.com 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读!” ——邓俊辉,清华大学计算机系教授 空间占用尽量少,以节省计算机内存。 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 初识算法 www.hello‑algo.com 15 图 1‑5 拼装积木 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。0 码力 | 379 页 | 18.47 MB | 10 月前3
共 49 条
- 1
- 2
- 3
- 4
- 5













