2019-2021 美团技术年货 前端篇AOSP,逐步发展出 自己的生态,这意味着现有安卓应用在鸿蒙设备上将会逐渐变成“二等公民”。然而, 如果在 iOS 及 Android 之外再重新开发和维护一套鸿蒙应用,在如今业界越来越注 重开发迭代效率的环境下,所带来的开发成本也是难以估量的。因此,通过打造一套 合适的跨端框架,以相对低的成本移植应用到鸿蒙平台,并利用好该系统的特性能 力,就成为了一个非常重要的选项。 在现有的众多跨端框架当中,Flutter 框架层,并完成事件的消费、分发和逻辑处 理。同样,整个流程的大部分工作已经由 Flutter 统一,我们要做的仅仅是在原生容 器上监听用户的输入,并封装成指定格式交给引擎层而已。 在鸿蒙系统上,我们可以借助平台提供的 多模输入 API,实现多种类型事件的监听: flutterComponent.setTouchEventListener(touchEventListener); // 触摸及鼠标事件 flutterComponent flutter gallery 应用的截图,截图中 Flutter 引擎已经使 用鸿蒙系统的平台能力进行了重写: 12 > 2021年美团技术年货 DevEco Running Flutte 借由鸿蒙的多设备支持能力,此应用甚至可在 TV、车机、手表、平板等设备上运行: Flutter Multiple Devices 前端 < 13 总结和展望 通过上述的构建和适配工作,我们以极小的开发成本实现了0 码力 | 738 页 | 50.29 MB | 1 年前3
前端开发者指南(2017)模块系统 学习模块加载和打包工具 学习包管理工具 学习版本控制 学习构建及任务自动化技术 学习网站性能优化 学习测试 学习无头浏览器 学习离线开发 学习网络/浏览器/应用的安全 多平台开发学习 导向学习 前端课程 前端开发学习的起点 前端资讯、新闻站和播客 第三部分:前端开发工具 Doc/API 浏览工具 SEO 工具 原型设计和线框图工具 制图工具 3 1 学习模块加载和打包工具 学习包管理工具 Introduction 8 学习版本控制 学习构建及任务自动化技术 学习网站性能优化 学习测试 学习无头浏览器 学习离线开发 学习网络/浏览器/应用的安全 多平台开发学习 导向学习 前端课程 前端开发学习的起点 前端资讯、新闻站和播客 第三部分:前端开发工具 Doc/API 浏览工具 SEO 工具 原型设计和线框图工具 制图工具 HTTP 通常前端开发者通过学习 HTML、CSS 和 JS 来入门。HTML、CSS 和 JS 代码在 WEB 浏览 器、无头浏览器(Headless Browsers)、WebView 上运行,或者被用于原生运行环境的程 序设计。我稍后解释这四种运行场景。 WEB 浏览器 前端开发者是什么? 11 WEB 浏览器用于从万维网(WWW.)检索、呈现和遍历信息。通常浏览器在台式机、笔记 本、平板或手机上0 码力 | 164 页 | 6.43 MB | 1 年前3
Hello 算法 1.2.0 简体中文 JavaScript 版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 第 16 章 附录 362 16.1 编程环境安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 16.2 一起参与创作 . . . 与阅读代码相比,编写代码的过程往往能带来更多收获。动手学,才是真的学。 第 0 章 前言 www.hello‑algo.com 6 图 0‑3 运行代码示例 运行代码的前置工作主要分为三步。 第一步:安装本地编程环境。请参照附录所示的教程进行安装,如果已安装,则可跳过此步骤。 第二步:克隆或下载代码仓库。前往 GitHub 仓库。如果已经安装 Git ,可以通过以下命令克隆本仓库: git clone https://github GitHub 仓库。 3. 阶段三:搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富 知识体系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的 刷题心得可以在各个社区找到。 如图 0‑8 所示,本书内容主要涵盖“阶段一”,旨在帮助你更高效地展开阶段二和阶段三的学习。 第 0 章 前言 www.hello‑algo.com 90 码力 | 379 页 | 18.47 MB | 10 月前3
Hello 算法 1.0.0 JavaScript版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 第 16 章 附录 362 16.1 编程环境安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 16.2 一起参与创作 . . . 与阅读代码相比,编写代码的过程往往能带来更多收获。动手学,才是真的学。 第 0 章 前言 hello‑algo.com 6 图 0‑3 运行代码示例 运行代码的前置工作主要分为三步。 第一步:安装本地编程环境。请参照附录所示的教程进行安装,如果已安装,则可跳过此步骤。 第二步:克隆或下载代码仓库。前往 GitHub 仓库。如果已经安装 Git ,可以通过以下命令克隆本仓库: git clone https://github 轮的重复后,就能将其牢记在心。 3. 阶段三:搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富 知识体系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的 刷题心得可以在各个社区找到。 如图 0‑8 所示,本书内容主要涵盖“阶段一”,旨在帮助你更高效地展开阶段二和阶段三的学习。 第 0 章 前言 hello‑algo.com 9 图0 码力 | 376 页 | 17.57 MB | 1 年前3
阮一峰 《ECMAScript 6入门》 第三版的服务器运行环境(runtime)。它对 ES6 的支持度更高。除 了那些默认打开的功能,还有一些语法功能已经实现了,但是默认没有打开。使用 下面的命令,可以查看 Node 已经实现的 ES6 特性。 $ node --v8-options | grep harmony 上面命令的输出结果,会因为版本的不同而有所不同。 我写了一个工具 ES-Checker,用来检查各种运行环境对 ES6 的支持情况。访问 的支持情况。访问 ruanyf.github.io/es-checker,可以看到您的浏览器支持 ES6 的程度。运行下面的 命令,可以查看你正在使用的 Node 环境对 ES6 的支持程度。 ECMAScript 6简介 10 $ npm install -g es-checker $ es-checker ========================================= =================== Babel 转码器 Babel 是一个广泛使用的 ES6 转码器,可以将 ES6 代码转为 ES5 代码,从而在现 有环境执行。这意味着,你可以用 ES6 的方式编写程序,又不用担心现有环境是 否支持。下面是一个例子。 // 转码前 input.map(item => item + 1); // 转码后 input.map(function (item)0 码力 | 679 页 | 2.66 MB | 1 年前3
Hello 算法 1.1.0 JavaScript版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 第 16 章 附录 362 16.1 编程环境安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 16.2 一起参与创作 . . . 与阅读代码相比,编写代码的过程往往能带来更多收获。动手学,才是真的学。 第 0 章 前言 hello‑algo.com 6 图 0‑3 运行代码示例 运行代码的前置工作主要分为三步。 第一步:安装本地编程环境。请参照附录所示的教程进行安装,如果已安装,则可跳过此步骤。 第二步:克隆或下载代码仓库。前往 GitHub 仓库。如果已经安装 Git ,可以通过以下命令克隆本仓库: git clone https://github GitHub 仓库。 3. 阶段三:搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富 知识体系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的 刷题心得可以在各个社区找到。 如图 0‑8 所示,本书内容主要涵盖“阶段一”,旨在帮助你更高效地展开阶段二和阶段三的学习。 第 0 章 前言 hello‑algo.com 9 图0 码力 | 379 页 | 18.46 MB | 1 年前3
Hello 算法 1.0.0b5 JavaScript版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 第 16 章 附录 366 16.1 编程环境安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 16.2 一起参与创作 . . . 时间有限,请至少通读并运行所有代码。 与阅读代码相比,编写代码的过程往往能带来更多收获。动手学,才是真的学。 图 0‑3 运行代码示例 运行代码的前置工作主要分为三步。 第一步:安装本地编程环境。请参照附录教程进行安装,如果已安装则可跳过此步骤。 第二步:下载代码仓。如果已经安装 Git ,可以通过以下命令克隆本仓库。 git clone https://github.com/krahets/hello-algo 轮的重复后,就能将其牢记在心。 3. 搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富知识体 系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的刷题心 得可以在各个社区找到。 如图 0‑7 所示,本书内容主要涵盖“第一阶段”,旨在帮助你更高效地展开第二和第三阶段的学习。 第 0 章 前言 hello‑algo.com 8 图0 码力 | 375 页 | 30.68 MB | 1 年前3
Hello 算法 1.0.0b1 JavaScript版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 12. 附录 178 12.1. 编程环境安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 12.2. 一起参与创作 . 轮以上后,往往就能牢记于心了。 3. 搭建知识体系。在学习方面,可以阅读算法专栏文章、解题框架、算法教材,不断地丰富知识体系。在 刷题方面,可以开始采用进阶刷题方案,例如按专题分类、一题多解、一解多题等,相关刷题心得可以 在各个社区中找到。 作为一本入门教程,本书内容主要对应“第一阶段”,致力于帮助你更高效地开展第二、三阶段的学习。 Figure 0‑2. 算法学习路线 0.2.2. 行文风格约定 若时间允许,强烈建议对照着代码自己敲一遍。相比于读代码,写代码的过程往往能带来新的收获。 0. 写在前面 hello‑algo.com 5 Figure 0‑4. 运行代码示例 第一步:安装本地编程环境。参照附录教程,如果已有可直接跳过。 第二步:下载代码仓。如果已经安装 Git ,可以通过命令行来克隆代码仓。 git clone https://github.com/krahets/hello-algo0 码力 | 185 页 | 14.70 MB | 1 年前3
廖雪峰JavaScript教程法执行如联网等JavaScript代码,最终,你还是需要架设一个Web服务器,然后以 http:// 开头的 地址来正常执行所有JavaScript代码。 不过,开始学习阶段,你无须关心如何搭建开发环境的问题,我们提供在页面输入JavaScript代码并 直接运行的功能,让你专注于JavaScript的学习。 试试直接点击“Run”按钮执行下面的JavaScript代码: 1. // 以//开头直到行末的是注释,将被浏览器忽略 调用函数时,按顺序传入参数即可: 1. abs(10); // 返回10 2. abs(-9); // 返回9 由于JavaScript允许传入任意个参数而不影响调用,因此传入的参数比定义的参数多也没有问题,虽 然函数内部并不需要这些参数: 1. abs(10, 'blablabla'); // 返回10 2. abs(-9, 'haha', 'hehe', null); // 返回9 x }) (3); 通常,一个立即执行的匿名函数可以把函数体拆开,一般这么写: 1. (function (x) { 2. return x * x; 3. })(3); 说了这么多,难道闭包就是为了返回一个函数然后延迟执行吗? 当然不是!闭包有非常强大的功能。举个栗子: 在面向对象的程序设计语言里,比如Java和C++,要在对象内部封装一个私有变量,可以 用 private0 码力 | 264 页 | 2.81 MB | 10 月前3
阮一峰 JavaScript 教程构建 导论 导论 什么是 JavaScript 语言? 为什么学习 JavaScript? 操控浏览器的能力 广泛的使用领域 易学性 强大的性能 开放性 社区支持和就业机会 实验环境 JavaScript 是一种轻量级的脚本语言。所谓“脚本语言”(script language),指的是它不具备开发操作系统的能力,而是只用来编写 控制其他大型应用程序(比如浏览器)的“脚本”。 aScript 本 身不提供任何与 I/O(输入/输出)相关的 API,都要靠宿主环境 (host)提供,所以 JavaScript 只合适嵌入更大型的应用程序环 境,去调用宿主环境提供的底层 API。 目前,已经嵌入 JavaScript 的宿主环境有多种,最常见的环境就是 浏览器,另外还有服务器环境,也就是 Node 项目。 导论 什么是 JavaScript 语言? 导论 - - 9 - 本文档使用 书栈(BookStack.CN) 构建 从语法角度看,JavaScript 语言是一种“对象模型”语言。各种宿主 环境通过这个模型,描述自己的功能和操作接口,从而通过 JavaScript 控制这些功能。但是,JavaScript 并不是纯粹的“面 向对象语言”,还支持其他编程范式(比如函数式编程)。这导致几乎 任何一个问题,JavaScript 都有多种解决方法。阅读本书的过程0 码力 | 540 页 | 3.32 MB | 10 月前3
共 20 条
- 1
- 2













