比如说,你想跟踪 DOM 树里的一个元素,当它进入可见窗口时得到通知. 也许想实现即时延迟加载图片功能,或者你需要知道用户是否真的在看一个广告 banner. 你可以通过绑定 scroll 事件或者用一个周期性的定时器,然后再回调函数中调用元素的 getBoundingClientRect() 获取元素位置实现这个功能. 但是,这种实现方式性能极差,因为每次调用 getBoundingClientRect() 都会强制浏览器重新计算整个页面的布局,可能给你的网站造成相当大的闪烁. 如果你的站点被…
  代码审查者在审查代码时有非常多的东西需要关注.一个团队需要明确对于自己的项目哪些点是重要的,并不断在审查中就这些点进行检查. 人工审查代码是十分昂贵的,因此尽可能地使用自动化方式进行审查,如:代码格式.代码样式.检查常见bug.确定常见安全问题以及运行自动化测试. 当针对性能进行审查时,了解系统的性能需求是明确潜在问题的关键. 一些简单的人工检查可以显著提升应用的安全性. 代码审查是应该在互相沟通中进行讨论的,而不是相互对抗.预先确定哪些是要点哪些不是,可以减少冲突并拟定预期. 众所周知,在…
作者 | 徐进茂(罗离) JAVA 开发工程师  导读:近年来,Serverless 一词越来越热,它已经逐渐成为了一种新型的软件设计架构.和 DevOps 概念提倡的是通过一系列工具和自动化的技术来降低运维的难度,促进研发运维一体化不同, Serverless 更像是一种 NoOps,即通过"不用做"的方式来解决"如何更高效做"的问题. DevOps 概述 DevOps 是一组用于促进开发和运维人员之间协作的过程.方法和系统的统称. DevOps 提倡通过一系列的…
点击下载<不一样的 双11 技术:阿里巴巴经济体云原生实践> 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击上方图片即可下载! 作者 | 陈星宇(宇慕)阿里云基础技术中台技术专家 导读:etcd 是阿里巴巴内部容器云平台用于存储关键元信息的组件.阿里巴巴使用 etcd 已经有 3 年的历史, 在今年 双11 过程中它又一次承担了关键角色,接受了 双11 大压力的检验.为了让更多同学了解到 etcd 的最佳实践和阿里巴巴内部的使用经验,本文作者将和大家分享阿…
作者:yijian,终端OS分布式文件系统专家:gongashi,终端OS分布式数据管理专家 HarmonyOS作为分布式操作系统,其分布式数据管理能力非常重要.我们也一直围绕持续为开发者带来全局"一份"数据的开发体验的目标,在不断增强和提升HarmonyOS的分布式数据管理能力.本期我们就来为大家详细介绍分布式数据管理的新能力. 一.分布式数据管理平台面临的挑战 我们先来看一个典型的分布式场景: 手机和智慧屏协同进行文档演示,手机上的文档演示状态(比如翻页.页面放大.页面缩小和涂鸦等…
bootstrap已经作为前端开发必不可少的框架之一,应用bootstrap使得我们对布局.样式的设定变得非常简单.但bootstrap提供的默认样式往往不能满足我们的需求,从而定制化bootstrap成为我们经常需要做的工作,本文就如何更高效更可维护地定制bootstrap做一下探讨. 如下图,在你的button 中加入bootstrap的class: btn btn-primary,就可以将默认的button(左边)变成右边的样式. 可如果我们想应用自己的样式呢?比如我们想要拥有圆角的but…
第一种更高效,直接调用javascript引擎.…
讨论 jQuery 和 javascript 性能的文章并不罕见.然而,本文我计划总结一些速度方面的技巧和我本人的一些建议,来提升你的 jQuery 和 javascript 代码.好的代码会带来速度的提升.快速渲染和响应意味着更好的用户体验. 首先,在脑子里牢牢记住 jQuery 就是 javascript.这意味着我们应该采取相同的编码惯例,风格指南和最佳实践. 首先,如果你是一个 javascript 新手,我建议您阅读 <24 JavaScript Best Practices for…
本文转载自:http://blog.csdn.net/androidzhaoxiaogang/article/details/8172539 什么是序列化,实现序列化的目的是什么? 讨论这个问题之前,我们要明白什么是序列化?序列化就是为了 实现将对象状态转换为可保持或传输的格式的过程. 目的主要有以下三点: 1)永久性保存对象,保存对象的字节序列到本地文件中: 2)通过序列化对象在网络中传递对象: 3)通过序列化在进程间传递对象. 为什么说Parcelable 比Serializable更高效…
版权声明:欢迎转载,转载请注明出处;http://blog.csdn.net/angcyo 看本文之前,推荐先看我之前写的一篇文章: 传送门 日前Android Stuido 已经更新到 2.0.0 preview 5了; 虽然官网说, gradle 的速度, 大幅度提升,然而并没有什么卵用; 不知道是不是个人问题, 使用 install run 功能之后, 修改逻辑代码,偶尔会出现不生效的情况; 就是代码,明明改了,但是执行结果却和之前的一样; 但是,xml布局文件,修改之后,效果真的很明显,…