2019-2021 美团技术年货 前端篇
层)之上又增加了公共逻辑处理层,最终暴露 给用户是 Plugin API 层提供的接口。MTFlutter Plugin 架构图如下: MTFlutter Plugin 架构图 在细节实现上,由于项目中各种依赖的类型之间存在着差异,因此在依赖处理上也略 有不同,下面介绍拥有不同特点的依赖所对应解决方案。 (1)各平台实现能在 Web 侧对齐的场景,如埋点库 埋点库无论在 Native 端还是在 设计 上具有天然的一致性,因此我们完全有能力在 Plugin Interface 层对齐所有接口,上 层业务逻辑只需按需做些兼容处理即可。埋点库 Web 端扩展的整体设计思路如下: ● 在业务项目的 web/index.html 文件中直接引入 Script 脚本并且进行初始化 (注意:引入 Script 的位置,需要放在 main.dart.js 前面)。 ● 借助 package:js JS 交互是通过 package:js 进行接口调用,因此我们在公共逻辑处理层用 Dart 对齐了 相应的 API,详细架构图如下图所示: 请求库架构图 4.2 性能优化 常规的 Web 项目中,为了保证页面有更好的加载和渲染性能,在静态资源文件的处 理方面,我们需要做很多的工作,例如:资源文件 Hash 化、CDN 化、按需加载处 理等,这些可以通过 Webpack、Rollup 等构建工具进行预处理。但在0 码力 | 738 页 | 50.29 MB | 1 年前3前端开发者指南(2017)
SVG、canvas、webGL) 动画工具 JSON 工具 占位符内容工具 测试工具 前端数据存储工具 (例如客户端的数据存储方案) 模块加载/打包工具 模块/包管理工具 托管工具 项目管理以及代码托管工具 协作与沟通工具 内容管理 托管/API 工具 后端即服务工具 离线工具 安全工具 构建工具 部署工具 4 1.7.38 1.7.39 1.7.40 1.7 动画工具 JSON 工具 占位符内容工具 测试工具 前端数据存储工具 (例如客户端的数据存储方案) 模块加载/打包工具 Introduction 9 模块/包管理工具 托管工具 项目管理以及代码托管工具 协作与沟通工具 内容管理 托管/API 工具 后端即服务工具 离线工具 安全工具 构建工具 部署工具 网站/应用监控工具 JavaScript 错误报告/监控 Angular 1 那 般辉煌了。 JavaScript 大体上保持软件技术的中流砥柱位置。 更多的开发者开始把工具化(比如自动化)和测试当回事了。 静态站点生成器被重视起来。 CSS 网格布局(CSS Grid)势头正旺且前途无量。 NPM 受到来自 Yarn 的挑战。 下一代类 React 方案的演化通过 Preact、Deku、Rax 和 inferno 的形式展现,并伴随着 少量0 码力 | 164 页 | 6.43 MB | 1 年前3阮一峰 JavaScript 教程
书栈(BookStack.CN) 构建 介绍 本教程全面介绍 JavaScript 核心语法,从最简单的开始讲起,循序 渐进、由浅入深,力求清晰易懂。所有章节都带有大量的代码实例,便 于理解和模仿,可以用到实际项目中,即学即用。 本教程适合初学者当作 JavaScript 语言的入门教程,也适合当作日 常使用的参考手册。 介绍 - 5 - 本文档使用 书栈(BookStack.CN) 构建 前言 前言 JavaScript 只合适嵌入更大型的应用程序环 境,去调用宿主环境提供的底层 API。 目前,已经嵌入 JavaScript 的宿主环境有多种,最常见的环境就是 浏览器,另外还有服务器环境,也就是 Node 项目。 导论 什么是 JavaScript 语言? 导论 - 9 - 本文档使用 书栈(BookStack.CN) 构建 从语法角度看,JavaScript 语言是一种“对象模型”语言。各种宿主 CN) 构建 能,比如操作本地文件、操作图片、调用摄像头和麦克风等等。这使得 JavaScript 可以完成许多以前无法想象的事情。 (2)Node Node 项目使得 JavaScript 可以用于开发服务器端的大型项目,网 站的前后端都用 JavaScript 开发已经成为了现实。有些嵌入式平台 (Raspberry Pi)能够安装 Node,于是 JavaScript 就能为这0 码力 | 540 页 | 3.32 MB | 10 月前3阮一峰 《ECMAScript 6入门》 第三版
ECMAScript 3.1,而将其他激进的设想扩大范围,放入以后的版 本,由于会议的气氛,该版本的项目代号起名为 Harmony(和谐)。会后不久, ECMAScript 3.1 就改名为 ECMAScript 5。 2009年12月,ECMAScript 5.0 版正式发布。Harmony 项目则一分为二,一些较为 可行的设想定名为 JavaScript.next 继续开发,后来演变成 ECMAScript 上面的原始代码用了箭头函数,Babel 将其转为普通函数,就能在不支持箭头函数 的 JavaScript 环境执行了。 配置文件 .babelrc Babel 的配置文件是 .babelrc ,存放在项目的根目录下。使用 Babel 的第一步, 就是配置这个文件。 该文件用来设置转码规则和插件,基本格式如下。 { "presets": [], "plugins": [] } ECMAScript babel src -d lib -s 上面代码是在全局环境下,进行 Babel 转码。这意味着,如果项目要运行,全局环 境必须有 Babel,也就是说项目产生了对环境的依赖。另一方面,这样做也无法支 持不同项目使用不同版本的 Babel。 一个解决办法是将 babel-cli 安装在项目之中。 # 安装 $ npm install --save-dev babel-cli 然后,改写0 码力 | 679 页 | 2.66 MB | 1 年前3Hello 算法 1.0.0b1 JavaScript版
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 1 0. 写在前面 0.1. 关于本书 本项目致力于构建一本开源免费、新手友好的数据结构与算法入门书。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑; ‧ 算法源代码皆可一键运行,支持 Java, C++ ello World!” 的回忆。 ‧ 感谢苏潼为本书设计了封面和 LOGO ,在我的强迫症下前后多次帮忙修改,谢谢你的耐心。 ‧ 感谢 @squidfunk 给出的写作排版建议,以及优秀开源项目 Material‑for‑MkDocs 。 本书鼓励“手脑并用”的学习方式,在这点上受到了《动手学深度学习》很大影响,也在此向各位同学强烈推 荐这本著作,包括中文版、英文版、李沐老师 bilibili Figure 12‑1. 页面编辑按键 图片无法直接修改,需要通过新建 Issue 或评论留言来描述图片问题,我会第一时间重新画图并替换图片。 12.2.2. 内容创作 如果您想要参与本开源项目,包括翻译代码至其他编程语言、拓展文章内容等,那么需要实施 Pull Request 工作流程: 1. 登录 GitHub ,并 Fork 本仓库 至个人账号; 2. 进入 Fork 仓库网页,使用0 码力 | 185 页 | 14.70 MB | 1 年前3廖雪峰JavaScript教程
:focus:可以选择当前输入焦点的元素,例如把光标放到一个上,用 $('input:focus')就可以选出; :checked:选择当前勾上的单选框和复选框,用这个选择器可以立刻获得用户选择的项目,如 $('input[type=radio]:checked'); :enabled:可以选择可以正常输入的、0 码力 | 264 页 | 2.81 MB | 10 月前3[试读]15天学会JavaScript - 第 2 章 ECMAScript语法基础
规范中,虽然允许可以不通过“var”关键字来声明变量,但这一点终归 是不被大多数严谨的设计人员所接受的。不仅仅是因为这类代码的可读性与可维护性比较差, 最主要的是因为如果不通过“var”关键字来声明变量,在大型 Web 开发项目中会出现很多意 想不到的错误,大大增加调试纠错的难度。 因此,在 ECMAScript 5 规范之后,增加了一个严格模式“use strict”字面量用来强制设 27 第 2 章 成字符串。不 过,还是建议使用 toString()方法进行转换字符串的操作,除非必须使用【代码 2-35】中大多 数情况下第 02 行同样的代码。 对于本小节介绍的强制类型转换方法,在实际项目开发中是非常有用的;因为我们知道 ECMAScript 是弱类型的编程语言,在很多情况下都需要对变量进行强制类型转换操作,希望 读者加以重视。 2.5 ECMAScript 6 新特新——let、const0 码力 | 52 页 | 3.83 MB | 1 年前3JavaScript Promise迷你书(中文版)
况,从而不能正确的进行错误处理。 Chapter.3 - Promise测试 这章我们学习如果编写Promise 的测试代码 基本测试 关于ES6 Promises的语法我们已经学了一些, 我想大家应该也能够在实际项目中编写 Promise 的Demo代码了吧。 这时,接下来你可能要苦恼该如何编写Promise 的测试代码了。 那么让我们先来学习下如何使用 Mocha33来对Promise 进行基本的测试吧。 ipt 会隐式的使用return返回,所 以使用 done 的话可能更容易理解一些。 对Promise进行测试比对通常的异步函数进行测试坑更多,虽说采取什么样的测试方法 是个人的自由,但是在同一项目中采取前后风格一致的测试则是非常重要。 Chapter.4 - Advanced 在这一章里,我们会基于前面学到的内容,再深入了解一下Promise里的一些高级内 容,加深对Promise的理解。0 码力 | 112 页 | 1010.02 KB | 1 年前3Hello 算法 1.1.0 JavaScript版
Abstract 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、 request”按钮即可发起拉取请求。 图 16‑3 页面编辑按键 图片无法直接修改,需要通过新建 Issue 或评论留言来描述问题,我们会尽快重新绘制并替换图片。 2. 内容创作 如果您有兴趣参与此开源项目,包括将代码翻译成其他编程语言、扩展文章内容等,那么需要实施以下 Pull Request 工作流程。 1. 登录 GitHub ,将本书的代码仓库 Fork 到个人账号下。 2. 进入您的 Fork 附录 hello‑algo.com 367 3. Docker 部署 在 hello-algo 根目录下,执行以下 Docker 脚本,即可在 http://localhost:8000 访问本项目: docker-compose up -d 使用以下命令即可删除部署: docker-compose down 16.3 术语表 表 16‑1 列出了书中出现的重要术语,值得注意以下几点。0 码力 | 379 页 | 18.46 MB | 1 年前3Hello 算法 1.2.0 简体中文 JavaScript 版
Abstract 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 www.hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,内容清晰易懂、学习曲线平滑,引导初学者探索数据结构与算法的知识地图。 ‧ 源代码可一键运行,帮助读者在练习中提 图片无法直接修改,需要通过新建 Issue 或评论留言来描述问题,我们会尽快重新绘制并替换图片。 第 16 章 附录 www.hello‑algo.com 367 2. 内容创作 如果您有兴趣参与此开源项目,包括将代码翻译成其他编程语言、扩展文章内容等,那么需要实施以下 Pull Request 工作流程。 1. 登录 GitHub ,将本书的代码仓库 Fork 到个人账号下。 2. 进入您的 Fork pull request”按钮即可发起拉取请求。 3. Docker 部署 在 hello-algo 根目录下,执行以下 Docker 脚本,即可在 http://localhost:8000 访问本项目: docker-compose up -d 使用以下命令即可删除部署: docker-compose down 16.3 术语表 表 16‑1 列出了书中出现的重要术语,值得注意以下几点。0 码力 | 379 页 | 18.47 MB | 10 月前3
共 14 条
- 1
- 2