2019-2021 美团技术年货 前端篇性能优化探索与实践 36 设计稿(UI 视图)自动生成代码方案的探索 56 美团外卖终端容器无关化研发框架 74 一款可以让大型 iOS 工程编译速度提升 50% 的工具 96 从预编译的角度理解 Swift 与 Objective-C 及混编机制 108 美团民宿跨端复用框架设计与实践 165 美团跨端一体化富文本管理技术实践 186 前端 | 2020 202 移动端 在美团动态化方案 MTFlexbox 中的实践 459 开源 React Native 组件库 beeshell 2.0 发布 473 React Native 在美团外卖客户端的实践 506 Android 静态代码扫描效率优化与实践 530 Probe:Android 线上 OOM 问题定位组件 560 活动 Web 页面人机识别验证的探索与实践 580 React Native 在中大型团队的应用实践 610 美团 iOS 工程 zsource 命令背后的那些事儿 627 客户端单周发版下的多分支自动化管理与实践 635 美团外卖前端容器化演进实践 643 Bifrost 微前端框架及其在美团闪购中的实践 664 Litho 的使用及原理剖析 680 Android 兼容 Java 8 语法特性的原理分析 697 美团外卖商家端视频探索之旅 715 让 Flutter0 码力 | 738 页 | 50.29 MB | 1 年前3
前端开发者指南(2017)HTML 工具 CSS 工具 DOM 工具 JavaScript 工具 静态网页构建工具 无障碍访问工具 应用程序框架工具(台式机、手机、平板电脑等) 渐进式 Web 应用工具 脚手架工具 常规前端开发工具 模版/数据绑定工具 UI 组件 & 组件包 数据可视化工具(例如图表) 图形工具(例如 SVG、canvas、webGL) 动画工具 JSON 工具 占位符内容工具 HTML 工具 CSS 工具 DOM 工具 JavaScript 工具 静态网页构建工具 无障碍访问工具 应用程序框架工具(台式机、手机、平板电脑等) 渐进式 Web 应用工具 脚手架工具 常规前端开发工具 模版/数据绑定工具 UI 组件 & 组件包 数据可视化工具(例如图表) 图形工具(例如 SVG、canvas、webGL) 动画工具 JSON 工具 占位符内容工具 JavaScript: 前端开发者使用 WEB 技术(例如 HTML、CSS、 DOM 和 JavaScript)来建造网站和开发应 用。他们使用 WEB 技术在 WEB 平台或非 WEB 框架(比如 NativeScript 框架)上设计程 序。 图片来源:https://www.upwork.com/hiring/development/front-end-developer/ 通常前端开发者通过学习0 码力 | 164 页 | 6.43 MB | 1 年前3
阮一峰 JavaScript 教程JavaScript 和 HTML5 打包在一个容器之 中,使得它能同时在 iOS 和安卓上运行。Facebook 公司的 React Native 项目则是将 JavaScript 写的组件,编译成原生组件,从 而使它们具备优秀的性能。 Mozilla 基金会的手机操作系统 Firefox OS,更是直接将 JavaScript 作为操作系统的平台语言,但是很可惜这个项目没有成 导论 的入门会非常容易。 必须说明的是,虽然核心语法不难,但是 JavaScript 的复杂性体现 在另外两个方面。 首先,它涉及大量的外部 API。JavaScript 要发挥作用,必须与其 他组件配合,这些外部组件五花八门,数量极其庞大,几乎涉及网络应 用的各个方面,掌握它们绝非易事。 其次,JavaScript 语言有一些设计缺陷。某些地方相当不合理,另 一些地方则会出现怪异的运行结果。学习 JavaScript,很大一部分 Application)这个概念的诞生。由于 Gmail 是在4月1日发布的, 很多人起初以为这只是一个玩笑。 2004年,Dojo 框架诞生,为不同浏览器提供了同一接口,并为主要 功能提供了便利的调用方法。这标志着 JavaScript 编程框架的时代 开始来临。 2004年,WHATWG 组织成立,致力于加速 HTML 语言的标准化进程。 2005年,苹果公司在 KHTML 引擎基础上,建立了0 码力 | 540 页 | 3.32 MB | 10 月前3
ECMAScript规范 第三版 中文版Orlando,FL,October 1987. 4.1 网页脚本 网页浏览器为 ECMAScript 提供了一个宿主环境以进行客户端的计算,例如:代表窗口、 菜单、浮动条、对话框、文本区域、锚点、框架、历史、cookies,以及输入/输出功能的对 象。 深入说来,主机环境提供了一套向事件上附加脚本代码的方法,这些事件有焦点的改变,页面 和图像的载入、卸载,出错和异常终止,点选,提交表单以及鼠标 动作等。脚本代码在 响。) Reference 是到对象的属性的引用。一个引用由两部分组件组成,基 对象(base object)和属 性名(property name)。 本规范使用下面的抽象操作来访问引用的组件。 • GetBase(V)。返回引用 V 的基对象组件。 • GetPropertyName(V)。返回引用 V 的属性名组件。 在本规范中使用这些抽象操作来操作引用。 8.7.1 GetValue(V) true,返回一个引用类型的值,其基对象是 Result(1),属性名为 标识 符。 4. 转到步骤 1。 5. 返回引用类型的值,基对象为 null,属性名为 标识符。 6. 求值标识符的结果总是一个引用类型的值,其成员名字组件与标识符字符串相等。 10.1.5 全局对象 全局对象比较特别,它在控制进入任何执行上下文之前被创建。初始化后的全局对象拥有 如下属性: • 内置对象,如 Math,String,Date,parseInt0 码力 | 58 页 | 563.06 KB | 1 年前3
JavaScript Promise迷你书(中文版)本章将主要对JavaScript中的Promise进行入门级的介绍。 什么是Promise 首先让我们来了解一下到底什么是Promise。 Promise是抽象异步处理对象以及对其进行各种操作的组件。 其详细内容在接下来我们 还会进行介绍,Promise并不是从JavaScript中发祥的概念。 Promise最初被提出是在 E语言12中, 它是基于并列/并行处理设计的一种编程语言。 现在 org/ 34 https://github.com/azu/promises-book JavaScript Promise 迷你书(中文版) 44 Mocha Mocha是Node.js下的测试框架工具,在这里,我们并不打算对 Mocha35本身进行详细讲 解。对 Mocha36感兴趣的读者可以自行学习。 Mocha可以自由选择BDD、TDD、exports中的任意风格,测试中用到的Assert 方法也 同样可以跟任何其他类库组合使用。 也就是说,Mocha本身只提供执行测试时的框 架,而其他部分则由使用者自己选择。 这里我们选择使用Mocha,主要基于下面3点理由。 • 它是非常著名的测试框架 • 支持基于Node.js 和浏览器的测试 • 支持"Promise测试" 最后至于为什么说 支持"Promise测试" ,这个我们在后面再讲。 要想在本章中使用Mocha,我们需要先通过npm来安装Mocha。0 码力 | 112 页 | 1010.02 KB | 1 年前3
阮一峰 《ECMAScript 6入门》 第三版"devDependencies": { "babel-eslint": "...", "eslint": "..." } } Mocha 则是一个测试框架,如果需要执行使用 ES6 语法的测试脚本,可以修 改 package.json 的 scripts.test 。 "scripts": { "test": "mocha --ui qunit last}` } } 从上面代码中,我们一眼就能看出, Person 类是可测试的,而 name 方法是只 读和不可枚举的。 Decorator 545 下面是使用 Decorator 写法的组件,看上去一目了然。 @Component({ tag: 'my-component', styleUrl: 'my-component.scss' }) export class MyComponent learn-generators: 编程练习,共6道题 Steven Sanderson, Experiments with Koa and JavaScript Generators: Generator入门介绍,以Koa框架为例 Mahdi Dibaiee, ES7 Array and Generator comprehensions:ES7的Generator 推导 Nicolas Bevacqua, ES6 Generators0 码力 | 679 页 | 2.66 MB | 1 年前3
新语⾔,新思维 解读⼀个并发问题的多种实现 - 陶召胜1 JavaScript 不不再有回调地狱,变异步为顺序化思维,程序更更加可读 2 Go ⾼高并发调度,通道让异步编程更更简单 3 Scala (1)简洁的异步编程 (2)AKKA:分布式计算框架 4 Java (1)fork/join (2)CompletableFuture (3)反应式编程(Reactive Programming ) next: JavaScript (2)AKKA:分布式计算框架 2014年年 Scala2.11 2016年年 Scala2.12 2017年年 Scala2.12.4 创建异步任务就是这么简洁 异步任务之间的连续处理理也是这么简洁 例例⼦子Scala实现 对⽐比:Java8 CompletableFuture实现 AKKA分布式计算框架 • 核⼼心概念:Actor,是⾏行行为和状态的容器器 1 JavaScript 不不再有回调地狱,变异步为顺序化思维,程序更更加可读 2 Go ⾼高并发调度,通道让异步编程更更简单 3 Scala (1)简洁的异步编程 (2)AKKA:分布式计算框架 4 Java (1)fork/join (2)CompletableFuture (3)反应式编程(Reactive Programming ) 谢谢! 陶召胜0 码力 | 42 页 | 9.85 MB | 1 年前3
Hello 算法 1.1.0 JavaScript版忘曲线”来 复习题目,通常在进行 3~5 轮的重复后,就能将其牢记在心。推荐的题单和刷题计划请见此 GitHub 仓库。 3. 阶段三:搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富 知识体系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的 刷题心得可以在各个社区找到。 如图 0‑8 所示,本书内容主要涵盖“阶段一” 般无法仅凭复杂度来选择 ? = 8 之下的最优解法。但对于 ? = 85 就很好选了,这时增长趋势已经占主导了。 51 第 3 章 数据结构 Abstract 数据结构如同一副稳固而多样的框架。 它为数据的有序组织提供了蓝图,算法得以在此基础上生动起来。 第 3 章 数据结构 hello‑algo.com 52 3.1 数据结构分类 常见的数据结构包括数组、链表、栈、队列、哈希表 根据约束条件剪枝 第 13 章 回溯 hello‑algo.com 278 13.1.3 框架代码 接下来,我们尝试将回溯的“尝试、回退、剪枝”的主体框架提炼出来,提升代码的通用性。 在以下框架代码中,state 表示问题的当前状态,choices 表示当前状态下可以做出的选择: /* 回溯算法框架 */ function backtrack(state, choices, res) {0 码力 | 379 页 | 18.46 MB | 1 年前3
Hello 算法 1.2.0 简体中文 JavaScript 版忘曲线”来 复习题目,通常在进行 3~5 轮的重复后,就能将其牢记在心。推荐的题单和刷题计划请见此 GitHub 仓库。 3. 阶段三:搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富 知识体系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的 刷题心得可以在各个社区找到。 如图 0‑8 所示,本书内容主要涵盖“阶段一” 般无法仅凭复杂度来选择 ? = 8 之下的最优解法。但对于 ? = 85 就很好选了,这时增长趋势已经占主导了。 51 第 3 章 数据结构 Abstract 数据结构如同一副稳固而多样的框架。 它为数据的有序组织提供了蓝图,算法得以在此基础上生动起来。 第 3 章 数据结构 www.hello‑algo.com 52 3.1 数据结构分类 常见的数据结构包括数组、链表、栈、队列 根据约束条件剪枝 第 13 章 回溯 www.hello‑algo.com 278 13.1.3 框架代码 接下来,我们尝试将回溯的“尝试、回退、剪枝”的主体框架提炼出来,提升代码的通用性。 在以下框架代码中,state 表示问题的当前状态,choices 表示当前状态下可以做出的选择: /* 回溯算法框架 */ function backtrack(state, choices, res) {0 码力 | 379 页 | 18.47 MB | 10 月前3
Hello 算法 1.0.0b5 JavaScript版一个挑战,但请放心,这是很正常的。我们可以按 照“艾宾浩斯遗忘曲线”来复习题目,通常在进行 3‑5 轮的重复后,就能将其牢记在心。 3. 搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富知识体 系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的刷题心 得可以在各个社区找到。 如图 0‑7 所示,本书内容主要涵盖“第一阶段 多少,所以一般无法仅凭复杂 度来选择 ? = 8 之下的最优解法。但对于 ? = 85 就很好选了,这时增长趋势已经占主导了。 48 第 3 章 数据结构 � 数据结构如同一副稳固而多样的框架。 它为数据的有序组织提供了蓝图,使算法得以在此基础上生动起来。 第 3 章 数据结构 hello‑algo.com 49 3.1 数据结构分类 常见的数据结构包括数组、链表、栈、队列、哈希 避免许多无意义的尝试,从而提高了搜索效率。 图 13‑3 根据约束条件剪枝 13.1.3 框架代码 接下来,我们尝试将回溯的“尝试、回退、剪枝”的主体框架提炼出来,提升代码的通用性。 在以下框架代码中,state 表示问题的当前状态,choices 表示当前状态下可以做出的选择。 第 13 章 回溯 hello‑algo.com 279 /* 回溯算法框架 */ function backtrack(state, choices0 码力 | 375 页 | 30.68 MB | 1 年前3
共 16 条
- 1
- 2













