Taobao FED

归档: 2018

活用 Shader,让你的页面更小,更炫,更快

可编程着色器(shader)是运行在 GPU 中的程序,是现代图形渲染技术的基础。shader 赋予了开发者「逐像素着色」的能力。桌面/移动设备的图形程序 API 诸如 OpenGL,OpenGL ES,DirectX 以及新一代的 Vulkan,shader 都是重中之重,核心中的核心。 WebGL 的出现,使得在浏览器环境中渲染 3D 场景变得轻而易举。但是 WebGL 和 shader 不

Rax 系列教程(长列表)

引子Rax 提供的长列表标签有很多,在什么场景下使用什么列表组件,怎样选择列表组件性能会更好,这些问题可能会给刚接触 Rax 的同学带来困扰。本文结合 Rax 0.5 发布版本对列表能力进行一次详细的梳理。 如何让页面滚动在开始正题之前先说说为什么要有长列表的概念,以及如何让页面可以滚动。 传统的 Web 页面天生在浏览器里就是可以滚动的,我们额外引入一个滚动容器的概念好像比较多余。但当我们做跨

G3D —— Hybrid 环境下的 WebGL 3D 渲染引擎

G3D 是一款基于 WebGL 的 JavaScript 3D 渲染引擎,借助 GCanvas,G3D 可以运行在 Weex,ReactNative 等 hybrid 环境下。G3D 由淘宝终端团队推出,并于 2018 年 3 月与 GCanvas 同时宣布正式开源。 那么就会有同学问了,G3D 和 three.js 有什么不同呀?G3D 和 GCanvas 究竟是什么关系啊?这篇文章,就聊一聊

淘宝技术部 2018 实习生内部推荐启动啦

我们是谁?我们是淘宝终端技术与基础业务团队,包含 前端、客户端、后端 三个团队有 150+ 同学。 前端团队我们负责:导购业务、内容业务、商家业务、基础交易业务、创新业务、店铺业务等大多数淘宝内的前端开发,在过程中不断沉淀,并借助团队具备前端和客户端两个职能岗位的优势,建立起了强大的终端技术体系: 多终端体系:在 WEEX 容器上,建立完整的生态体系,包含了:DSL、工程&工具体系、组

Rax 系列教程(native 扫盲)

引子Rax 天生就是一个跨容器的解决方案,这让我们不必单独了解 iOS 和 安卓背后做了什么,让我们的开发变得很省心。但真实情况是我们的业务往往同时跑在 web 和 native 两端,web 我们轻车熟路是前端天生的优势,native 对很多人来说就会有些陌生,native 上出现的各种问题用 web 的路子去解释往往会解释不通。据 2017 年底粗略统计 Rax 的用户 70% 是前端同学,

实现一个 JavaScriptCore 的 debugger —— iOS 篇

JSC 的 debugger 是个神奇的东西,在网上资料甚少,几乎完全搜索不到,尤其是 iOS 上,OC 接口没有暴露任何 debugger 信息。 不过好在 JSC 是开源的,通过分析源代码可以找到 JSC::Debugger 这个抽象类,我们继承这个抽象类,然后实现掉虚函数,创建实例并且把它挂载到 global object 即可开启 debug 能力了。 思路是简单的,在 iOS 设备上,

Rax 系列教程(上手)

引子这篇文章针对初学 Rax 的同学,主要介绍 Rax 是什么,开发体验的梳理,以及遇到 Rax 的开发问题如何寻求解决。本文配合 Rax 的 0.5 发布版本推出,结合新版 Rax 对于旧版的教程内容做出部分修正。 1、什么是 Rax Rax 是一个源自淘宝的开源项目 https://github.com/alibaba/rax 作为 Weex 的上层 DSL 在集团内有广泛的应用。 除了跨

构筑未来数据网 - Pandora.js 的信息通路

上一篇我们介绍了 Pandora.js 度量体系中的 Metrics,通过 Metrics 我们能将应用运行中的数据生成出来,但是有时候我们不仅仅需要这些指标数据,更可能需要信息数据。 这里的指标数据表示数字值,为了和信息数据(字符串)做区分。 所谓的信息数据是什么? 在 Pandora.js 中,我们定义为应用的信息聚合,这里分为静态信息和动态信息两种类型,举个例子,应用的应用名,应用启动

跨越时代的度量衡 - Pandora.js 的 Metrics 介绍

自秦始皇统一六国,天下归一,推行“一法度衡石丈尺,车同轨 ,书同文”,颁发统一度量衡诏书,制定了一套严格的管理制度,天底下的度量衡就变成了一套。而如今程序世界也是天下分崩离析,不同编程语言各占一隅,不过即使语法不同,但是分分合合,思路终归一致,想要度量代码的心情依旧是一样的。 度量的作用很多同学表示怀疑,为什么要度量? 其实回答很简单,度量就像是身体健康的检查器,就像体检给的报告,没有这份报告,