2019-2021 美团技术年货 前端篇层(黄色部分),利用 DOM、Canvas 对齐了 Flutter Native 的 UI 渲染能力,使得 Flutter 编写的 UI 能够在现代浏览器上正常展示。 此外,得益于 dart2js 这个早已成熟的工具,Dart 逻辑能够很容易的转换为 JavaS- cript,进而在 Web 中被正常运行。 二、面临的挑战 综上所述,我们选择基于 Flutter Web 探索跨端(App\PC\H5)解决方案,真正实 dart:ui(Web)的对齐,工程 化和性能相关的事项做的还比较少,例如: 前端 < 17 ● Flutter Web 构建产物较简陋,只是简单的输出 main.dart.js(1.1M,未 Gzip) 和 图片等静态资源,缺少 JS 拆包、文件 Hash、资源上传 CDN 等优 化工作,极大影响了页面的加载性能。 ● 由于 Flutter Web 自身实现了一套页面滚动机制,页面滚动过程中,会频繁计 Android(使用 Kotlin 或 Java)、iOS(使用 Swift 或 Objective-C)、Web、macOS、Windows 或 Linux 或其任意组合 编写插件包。 下面分别对这两种类型 Package 中如何分平台编程进行介绍。 (1) Dart Package Dart Package 是纯 Dart 编写,因此大部分代码均可由 dart2js 直接编译出 Web0 码力 | 738 页 | 50.29 MB | 1 年前3
Awesome Native Apps with NativeScript and AngularRowdy Rabouw - jfokus 2018 - @rowdyrabouw 92/120 Android Arsenal 4 libraries for Android (Java / Kotlin) Cocoapods 4 libraries for iOS (Objective-C / Swift) Awesome Native Apps with NativeScript and0 码力 | 120 页 | 31.85 MB | 1 年前3
前端开发者指南(2017)JSON (JavaScript 对象表示法) 学习 JS 模板 学习静态网页生成器 通过JS学习计算机科学 学习前端应用架构 学习数据(例如,JSON)API 的设计 学习 React & Redux 学习渐进式 Web 应用 学习设计 JS API 学习web开发工具 学习命令行的使用 学习 Node.js 学习 JS 模块系统 学习模块加载和打包工具 学习包管理工具 JSON (JavaScript 对象表示法) 学习 JS 模板 学习静态网页生成器 通过JS学习计算机科学 学习前端应用架构 学习数据(例如,JSON)API 的设计 学习 React & Redux 学习渐进式 Web 应用 学习设计 JS API 学习web开发工具 学习命令行的使用 学习 Node.js 学习 JS 模块系统 学习模块加载和打包工具 学习包管理工具 图片来源:https://www.upwork.com/hiring/development/front-end-developer/ 通常前端开发者通过学习 HTML、CSS 和 JS 来入门。HTML、CSS 和 JS 代码在 WEB 浏览 器、无头浏览器(Headless Browsers)、WebView 上运行,或者被用于原生运行环境的程 序设计。我稍后解释这四种运行场景。 WEB 浏览器0 码力 | 164 页 | 6.43 MB | 1 年前3
廖雪峰JavaScript教程8 underscore 8.1 Collections 8.2 Arrays 8.3 Functions 8.4 Objects 8.5 Chaining 9 Node.js 9.1 安装Node.js和npm 9.2 第一个Node程序 9.3 模块 9.4 基本模块 9.4.1 fs 9.4.2 stream 9.4.3 http 9.4.4 buffer 9.5 子,不过随着移动应用的兴起,没有人用Flash开发手机 App,所以它目前已经边缘化了。相反,随着HTML5在PC和移动端越来越流行,JavaScript变得更加 重要了。并且,新兴的Node.js把JavaScript引入到了服务器端,JavaScript已经变成了全能型选 手。 JavaScript一度被认为是一种玩具编程语言,它有很多缺陷,所以不被大多数后端开发人员所重视。 很多人 书栈(BookStack.CN) 构建 不要再犹豫了,立刻从现在开始,零基础迈向全栈开发工程师! 原文: https://wizardforcel.gitbooks.io/liaoxuefeng/content/js/1.html 可以在线编写JavaScript代码并直接运行! JavaScript教程 - 6 - 本文档使用 书栈(BookStack.CN) 构建 1 JavaScript简介 要0 码力 | 264 页 | 2.81 MB | 10 月前3
阮一峰 《ECMAScript 6入门》 第三版12 # 转码结果输出到标准输出 $ babel example.js # 转码结果写入一个文件 # --out-file 或 -o 参数指定输出文件 $ babel example.js --out-file compiled.js # 或者 $ babel example.js -o compiled.js # 整个目录转码 # --out-dir 或 -d 参数指定输出目录 REPL环境。 $ babel-node > (x => x * 2)(1) 2 babel-node 命令可以直接运行ES6脚本。将上面的代码放入脚本文 件 es6.js ,然后直接运行。 $ babel-node es6.js 2 babel-node 也可以安装在项目中。 $ npm install --save-dev babel-cli ECMAScript 6简介 14 "script-name": "babel-node script.js" } } 上面代码中,使用 babel-node 替代 node ,这样 script.js 本身就不用做任 何转码处理。 babel-register babel-register 模块改写 require 命令,为它加上一个钩子。此后,每当使 用 require 加载 .js 、 .jsx 、 .es 和 .es60 码力 | 679 页 | 2.66 MB | 1 年前3
JavaScript Promise迷你书(中文版)如果你读过上面的其中一本的话,就应该非常容易理解本书的内容了。 另外如果你有使用JavaScript编写Web应用程序的经验,或者使用Node.js编写过命令 行、服务器端程序的话,那么你可能会对本文中的一些内容感到非常熟悉。 本书的一本分章节将会以Node.js环境为背景进行说明,如果你有Node.js基础的话,那 么一定会非常容易理解这部分内容了。 格式约定 本书为了节约篇幅,用了下面一些格式上的约定。 • 关于Promise的术语请参考术语集。 html JavaScript Promise 迷你书(中文版) 6 // 取得成功时的处理 }); ---- <1> 传给回调函数的参数为(error对象, 执行结果)组合 Node.js等则规定在JavaScript的回调函数的第一个参数为 Error 对象,这也是它的一个 惯例。 像上面这样基于回调函数的异步处理如果统一参数使用规则的话,写法也会很明了。 但是,这也仅是编码规约而已,即使采用不同的写法也不会出错。 Promise.resolve() 等在内,主要都是一些对Promise进行操作的 辅助方法。 Promise workflow 我们先来看一看下面的示例代码。 promise-workflow.js function asyncFunction() { return new Promise(function (resolve, reject) { setTimeout(function0 码力 | 112 页 | 1010.02 KB | 1 年前3
Hello 算法 1.0.0b1 JavaScript版本项目致力于构建一本开源免费、新手友好的数据结构与算法入门书。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑; ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言; ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论一般能在两日内得到回复; 0.1.1. 读者对象 如果您是「算法初学者」,完全没有接触 无关,即不随着 ? 的变化而变化。 对于以下算法,无论操作数量 size 有多大,只要与数据大小 ? 无关,时间复杂度就仍为 ?(1) 。 // === File: time_complexity.js === /* 常数阶 */ function constant(n) { let count = 0; const size = 100000; for (let i = 0; i < size; count++; return count; } 线性阶 ?(?) 线性阶的操作数量相对输入数据大小成线性级别增长。线性阶常出现于单层循环。 // === File: time_complexity.js === /* 线性阶 */ function linear(n) { let count = 0; for (let i = 0; i < n; i++) count++; return0 码力 | 185 页 | 14.70 MB | 1 年前3
Hello 算法 1.0.0b5 JavaScript版本项目旨在创建一本开源免费、新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java、C++、Python、Go、JS、TS、C#、Swift、Rust、Dart、Zig 等 语言。 ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。 0.1.1 读者对象 若您是算法初学者,从未 记录。需要注意的是,Python 中 range(a, b) 对应的区间是“左闭右开”的,对应的遍历范围为 ?, ? + 1, … , ? − 1 。 // === File: iteration.js === /* for 循环 */ function forLoop(n) { let res = 0; // 循环求和 1, 2, ..., n-1, n for (let i = 1; 循环中,程序每轮都会先检查条件,如果条 件为真则继续执行,否则就结束循环。 下面,我们用 while 循环来实现求和 1 + 2 + ⋯ + ? 。 // === File: iteration.js === /* while 循环 */ function whileLoop(n) { let res = 0; let i = 1; // 初始化条件变量 // 循环求和 1, 2, .0 码力 | 375 页 | 30.68 MB | 1 年前3
Hello 算法 1.1.0 JavaScript版记录。需要注意的是,Python 中 range(a, b) 对应的区间是“左闭右开”的,对应的遍历范围为 ?, ? + 1, … , ? − 1 : // === File: iteration.js === /* for 循环 */ function forLoop(n) { let res = 0; // 循环求和 1, 2, ..., n-1, n for (let i = 1; 循环中,程序每轮都会先检查条件,如果条 件为真,则继续执行,否则就结束循环。 下面我们用 while 循环来实现求和 1 + 2 + ⋯ + ? : // === File: iteration.js === /* while 循环 */ function whileLoop(n) { let res = 0; let i = 1; // 初始化条件变量 // 循环求和 1, 2, . 例如在以下代码中,条件变量 ? 每轮进行两次更新,这种情况就不太方便用 for 循环实现: 第 2 章 复杂度分析 hello‑algo.com 21 // === File: iteration.js === /* while 循环(两次更新) */ function whileLoopII(n) { let res = 0; let i = 1; // 初始化条件变量 // 循环求和0 码力 | 379 页 | 18.46 MB | 1 年前3
Hello 算法 1.2.0 简体中文 JavaScript 版记录。需要注意的是,Python 中 range(a, b) 对应的区间是“左闭右开”的,对应的遍历范围为 ?, ? + 1, … , ? − 1 : // === File: iteration.js === /* for 循环 */ function forLoop(n) { let res = 0; // 循环求和 1, 2, ..., n-1, n for (let i = 1; 循环中,程序每轮都会先检查条件,如果条 件为真,则继续执行,否则就结束循环。 下面我们用 while 循环来实现求和 1 + 2 + ⋯ + ? : // === File: iteration.js === /* while 循环 */ function whileLoop(n) { let res = 0; let i = 1; // 初始化条件变量 // 循环求和 1, 2, . 复杂度分析 www.hello‑algo.com 21 例如在以下代码中,条件变量 ? 每轮进行两次更新,这种情况就不太方便用 for 循环实现: // === File: iteration.js === /* while 循环(两次更新) */ function whileLoopII(n) { let res = 0; let i = 1; // 初始化条件变量 // 循环求和0 码力 | 379 页 | 18.47 MB | 10 月前3
共 33 条
- 1
- 2
- 3
- 4













