2019-2021 美团技术年货 前端篇
也是难以估量的。因此,通过打造一套 合适的跨端框架,以相对低的成本移植应用到鸿蒙平台,并利用好该系统的特性能 力,就成为了一个非常重要的选项。 在现有的众多跨端框架当中,Flutter 以其自渲染能力带来的多端高度一致性,在新 系统的适配上有着突出的优势。虽然 Flutter 官方并没有适配鸿蒙的计划,但经过一 段时间的探索和实践,美团外卖 MTFlutter 团队成功实现了 Flutter 的三层结构: 在 Flutter 的架构设计中,最上层为框架层,使用 Dart 语言开发,面向 Flutter 业务 的开发者;中间层为引擎层,使用 C/C++ 开发,实现了 Flutter 的渲染管线和 Dart 运行时等基础能力;最下层为嵌入层,负责与平台相关的能力实现。显然我们要做的 是将嵌入层移植到鸿蒙上,确切地说,我们要通过鸿蒙原生提供的平台能力,重新实 前端 < 3 现一遍 Flutter 嵌入层 要求的所有子模块,而从能力支持角度,渲染、交互以及其他必要的原生平台能力 是保证 Flutter 应用能够运行起来的最基本的要素,需要优先支持。接下来会依次进 行介绍。 1. 渲染流程打通 我们再来回顾一下 Flutter 的图像渲染流程。如图所示,设备发起垂直同步(VSync) 信号之后,先经过 UI 线程的渲染管线(Animate/Build/Layout/Paint),再经过0 码力 | 738 页 | 50.29 MB | 1 年前3前端开发者指南(2017)
请参看 platform.html5.org。 超文本标记语言 (HTML) 超文本标记语言,通常被称为 HTML,被用作创建网页的标准标记语言。网络浏览器可 以读取 HTML 文件并且把它们渲染成可见或可听的网页。HTML 在语义上描述了一个网 站的结构,并且隐含了其表现形式,因此是一种标记语言,而非程序语言。 — 维基百科 前端开发者所使用的技术 20 相关规范/文档: W3C 包管理 JavaScript 动画 CSS 动画 图表/图形 UI 控件 代码质量测试 代码覆盖率测试 代码复杂性分析 集成测试 命令行/命令行界面 模板策略 模板引擎 单页应用 XHR 请求(亦称 AJAX) Web /浏览器 安全 HTML 语义 浏览器开发工具 前端开发技能 25 前端开发者为 ... 而开发 前端开发者所编写的 HTML、CSS 和 浏览器如何工作:现代浏览器的幕后原理 [阅读] 浏览器是如何真正渲染一个网站的? [观看] 什么会触发布局和重排 [阅读] 每位前端开发者必须知道的网页渲染技能 [阅读] 图片来源: http://www.html5rocks.com/en/tutorials/internals/howbrowserswork/ 浏览器优化 浏览器渲染优化 [观看] 网站性能优化 [观看] 对比浏览器 Web浏览器的比较0 码力 | 164 页 | 6.43 MB | 1 年前3Web 开发技术-JavaScript
标签才开始呈现内容。 0 码力 | 21 页 | 1.02 MB | 1 年前3阮一峰 《ECMAScript 6入门》 第三版
JavaScript,因 此 type="application/javascript" 可以省略。 默认情况下,浏览器是同步加载 JavaScript 脚本,即渲染引擎遇到 3
JavaScript极速入门 —— 内核与引擎
最初内核的概念包括渲染引擎与JS引擎,目前习惯直接称渲染引擎为内核,JS引擎独立。 浏览器内核 渲染引擎 JavaScript引擎 最初状态 浏览器内核 渲染引擎 JavaScript引擎 目前状态 JavaScript引擎独立了 渲染引擎与JavaScript 引擎 渲染引擎:Rendering Engine,一般习惯将之称为“浏览器内核”,主要功能是解析HTML/CSS进 行渲染页面,渲 拟机、解释器,用来解释执行js代码。在早期内 核也是包含js引擎的,而现在js引擎越来独立了,可以把它单独提出来。 总结:渲染引擎(浏览器内核)处理html/css,JavaScript引擎处理JavaScript代码,有js引擎的 地方就能解析js代码 浏览器 渲染引擎(内核) 解析html/css JavaScript引擎 解析JavaScript代码 JavaScript和java什么关系
0 码力 |
8 页 |
394.47 KB
| 1 年前
3
阮一峰 JavaScript 教程
是必不可少的工具。 近年来,JavaScript 的使用范围,慢慢超越了浏览器,正在向通用 的系统语言发展。 (1)浏览器的平台化 随着 HTML5 的出现,浏览器本身的功能越来越强,不再仅仅能浏览网 页,而是越来越像一个平台,JavaScript 因此得以调用许多系统功 为什么学习 JavaScript? 操控浏览器的能力 广泛的使用领域 导论 - 11 - 本文档使用 书栈(BookStack Netscape Navigator。 1994年12月,Navigator 发布了1.0版,市场份额一举超过90%。 Netscape 公司很快发现,Navigator 浏览器需要一种可以嵌入网 页的脚本语言,用来控制浏览器行为。当时,网速很慢而且上网费很 贵,有些操作不宜在服务器端完成。比如,如果用户忘记填写“用户 名”,就点了“发送”按钮,到服务器再发现这一点就有点太晚了,最好 能在用 balloons 上面代码中,第二个参数是数值,对应的占位符是 %d ,第三个参数是 字符串,对应的占位符是 %s 。 使用 %c 占位符时,对应的参数必须是 CSS 代码,用来对输出内容进 行CSS渲染。 1. console.log( 2. '%cThis text is styled!', 3. 'color: red; background: yellow; font-size:
0 码力 |
540 页 |
3.32 MB
| 10 月前
3
JavaScript 正则表达式迷你书 老姚 - v1.1
• 转换PDF教程 书中用的可视化图片是由 Regulex 正则表达式可视化工具生成。 其余图片是由 Processon 制作。 JavaScript 正则表达式迷你书 前言 | 第 1 页 意见和疑问 如果有意见或者问题的话,可以直接通过以下方式联系到我。 • 前端网 • 知乎 • 掘金 • qdlaoyao@126.com 确保你现在看的迷你书是最新版本,请点击这里: 了。真是佩服老姚的理解和讲解能力。相信我,通读迷你小书,可以让你真正理解正则并在工作中不 怕读,不怕写正则。让正则成为你开发中的一把利器。 — 小鱼二 JavaScript 正则表达式迷你书 前言 | 第 2 页 这是一本由浅入深且环环相扣的正则书籍,花了两天的碎片时间(8h)看完了,得益于老姚程序员的 逻辑性以及娴熟的文字表达能力,原本枯燥晦涩的正则知识,变得清晰且有迹可循! — Jack Lo 老 ,自身在JS的 成长上也受益于姚哥帮助,感谢他对这本书的付出,希望这本迷你书能帮助更多想学习正则的同学。 — Dark_Night JavaScript 正则表达式迷你书 前言 | 第 3 页 导读 亲爱的读者朋友,如果你打开了这本书,说明你跟我一样,对正则很感兴趣。 想必你也了解正则的重要性。在我看来,正则表达式是衡量程序员水平的一个侧面标准。 本书的目的,是希望所有认真读完的朋友们,能真正地学会并应用正则表达式。
0 码力 |
89 页 |
3.42 MB
| 10 月前
3
JavaScript 正则表达式迷你书 老姚 - v1.0
• 转换PDF教程 书中用的可视化图片是由 Regulex 正则表达式可视化工具生成。 其余图片是由 Processon 制作。 JavaScript 正则表达式迷你书 前言 | 第 1 页 意见和疑问 如果有意见或者问题的话,可以直接通过以下方式联系到我。 • 前端网 • 知乎 • 掘金 • qdlaoyao@126.com 后续版本更新,会在这里更新: 《JavaScript 了。真是佩服老姚的理解和讲解能力。相信我,通读迷你小书,可以让你真正理解正则并在工作中不 怕读,不怕写正则。让正则成为你开发中的一把利器。 — 小鱼二 JavaScript 正则表达式迷你书 前言 | 第 2 页 这是一本由浅入深且环环相扣的正则书籍,花了两天的碎片时间(8h)看完了,得益于老姚程序员的 逻辑性以及娴熟的文字表达能力,原本枯燥晦涩的正则知识,变得清晰且有迹可循! — Jack Lo 老 ,自身在JS的 成长上也受益于姚哥帮助,感谢他对这本书的付出,希望这本迷你书能帮助更多想学习正则的同学。 — Dark_Night JavaScript 正则表达式迷你书 前言 | 第 3 页 导读 亲爱的读者朋友,如果你打开了这本书,说明你跟我一样,对正则很感兴趣。 想必你也了解正则的重要性。在我看来,正则表达式是衡量程序员水平的一个侧面标准。 本书的目的,是希望所有认真读完的朋友们,能真正地学会并应用正则表达式。
0 码力 |
89 页 |
3.42 MB
| 10 月前
3
廖雪峰JavaScript教程
那么问题来了,为什么我们要学JavaScript?尤其是当你已经掌握了某些其他编程语言如Java、 C++的情况下。 简单粗暴的回答就是:因为你没有选择。在Web世界里,只有JavaScript能跨平台、跨浏览器驱动网 页,与用户交互。 Flash背后的ActionScript曾经流行过一阵子,不过随着移动应用的兴起,没有人用Flash开发手机 App,所以它目前已经边缘化了。相反,随着HTML5在PC和移动端越来越流行,JavaScript变得更加 assign() 。如果要重新加载当前页面,调 用 location.reload() 方法非常方便。 1. 'use strict'; 2. 3. if (confirm('重新加载当前页' + location.href + '?')) { 4. location.reload(); 5. } else { 6. location.assign('/discuss'); 这个对象属于历史遗留对象,对于现代Web页面来说,由于大量使用AJAX和页面交互,简单粗暴地调 用 history.back() 可能会让用户感到非常愤怒。 新手开始设计Web页面时喜欢在登录页登录成功时调用 history.back() ,试图回到登录前的页面。 这是一种错误的方法。 任何情况,你都不应该使用 history 这个对象了。 原文: https://wizardforcel
0 码力 |
264 页 |
2.81 MB
| 10 月前
3
Hello 算法 1.0.0b1 JavaScript版
例二:查字典。在字典中,每个汉字都有一个对应的拼音,而字典是按照拼音的英文字母表顺序排列的。假设 需要在字典中查询任意一个拼音首字母为 ? 的字,一般我们会这样做: 1. 打开字典大致一半页数的位置,查看此页的首字母是什么(假设为 ? ); 2. 由于在英文字母表中 ? 在 ? 的后面,因此应排除字典前半部分,查找范围仅剩后半部分; 3. 循环执行步骤 1‑2 ,直到找到拼音首字母为 ? 的页码时终止。 case‑by‑case 地分析。 5.1.4. 栈典型应用 ‧ 浏览器中的后退与前进、软件中的撤销与反撤销。每当我们打开新的网页,浏览器就将上一个网页执行 入栈,这样我们就可以通过「后退」操作来回到上一页面,后退操作实际上是在执行出栈。如果要同时 支持后退和前进,那么则需要两个栈来配合实现。 ‧ 程序内存管理。每当调用函数时,系统就会在栈顶添加一个栈帧,用来记录函数的上下文信息。在递归 函数中,
0 码力 |
185 页 |
14.70 MB
| 1 年前
3
共 15 条
- 1
- 2