Chromecast的杀手级特性 — NFC

扫描二维码

Chromecast + NFC



新版本的Chromecast已经发布。我已经喜欢上了新版本中存在的的JavaScript API。新的设计让我产生了一些想法。其中一个特性他们应该给予更多的支持和普遍的应用:更多的支持NFC.

5篇好文推荐

扫描二维码

前端开发规范手册

此手册主要实现的目标:代码一致性和最佳实践。通过代码风格的一致性,降低维护代码的成本以及改善多人协作的效率。同时遵守最佳实践,确保页面性能得到最佳优化和高效的代码。

此手册是在开发中积累下来的经验和参考其它规范/指南制定的,它只是起指导作用,除个别条目强制之外,大多数为非强制约束,开发者可根据自己的实际情况自行决定是否要遵守 该指南只是保证大方向一致性和最佳实践的阶段性总结,不是最后结论,它会随着时间而变化。

Facebook:我们是如何构建第一个跨平台的React Native APP

扫描二维码

今年早些时候,我们介绍过iOS版的React Native. React Native带来的是用web方式的React - 自声明式的UI组件和快速的开发迭代来完成手机平台的功能,然后为了保持速度、保真性、并达到原生的体验。今天我们很高兴发布React Native的Anroid版本.

在Facebook我们已经应用React Native在发布的产品有超过一年的时间了。几乎是整整一年之前,我们的团队开始规划开发广告管理APP。我们的部门是创建一个新的APP来让数百万的Facebook广告主来管理他们的账号并能创建新的广告。在完成的时候,这不仅仅是FB的第一个全React Native APP而且是第一个跨平台的APP.在这篇文章里,我们希望能和你分享我们是如何构建这个APP,React Native是如何让我们更快的,还有这个过程中我们的经验。

git使用ssh密钥

扫描二维码

git使用https协议,每次pull, push都要输入密码,相当的烦。 使用git协议,然后使用ssh密钥。这样可以省去每次都输密码。

大概需要三个步骤:
一、本地生成密钥对;
二、设置github上的公钥;
三、修改git的remote url为git协议。

怎么通过命令来检查浏览器的兼容性(译)

扫描二维码

传统上构建网站涉及很多的技术来解决浏览器的兼容性问题,有一些属性很特殊,甚至根本没有。web开发者会经常登录CanIUse上去查看某个功能是否被各浏览器支持。

CanIUse 保持和采用标准的HTML,CSS,SVG,依据W3C的规范,和每个浏览器的现存的bug相连接。举个栗子,我们可以从下面的图中看到Edge,Firefox,Opera Mini并不支持CSS Reflection,有的浏览器已经支持,需要增加前缀以标明。

HTTP 缓存

扫描二维码

通过网络获取内容既缓慢,成本又高:大的响应需要在客户端和服务器之间进行多次往返通信,这拖延了浏览器可以使用和处理内容的时间,同时也增加了访问者的数据成本。因此,缓存和重用以前获取的资源的能力成为优化性能很关键的一个方面。

在这篇指南中

  • 使用 ETag 验证缓存的响应
  • Cache-Control
  • 定义最优 Cache-Control 策略
  • 废弃和更新已缓存的响应
  • 缓存检查表

好消息是每个浏览器都实现了 HTTP 缓存! 我们所要做的就是,确保每个服务器响应都提供正确的 HTTP 头指令,以指导浏览器何时可以缓存响应以及可以缓存多久。

web前端面试题集锦

扫描二维码

前端开发面试知识点大纲:

HTML&CSS:  对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:布局、盒子模型、选择器优先级及使用、HTML5、CSS3、移动端适应。

JavaScript:   数据类型、面向对象、继承、闭包、插件、作用域、跨域、原型链、模块化、自定义事件、内存泄漏、事件机制、异步装载回调、模板引擎、Nodejs、JSON、ajax等。

其他:  HTTP、安全、正则、优化、重构、响应式、移动端、团队协作、可维护、SEO、UED、架构、职业生涯

图片懒加载插件

扫描二维码

unveil

这是一款十分轻量级的片时图片加载组件

支持现代浏览器及IE7+, Github上面有将近3K个star(关注)

使用

一般图片

<img src="bg.png" data-src="img1.jpg" />

移动开发规范概述

扫描二维码

以下规范建议,均是Alloyteam在日常开发过程中总结提炼出的经验,规范具备较好的项目实践,强烈推荐使用

字体设置

使用无衬线字体

body {
    font-family: "Helvetica Neue", Helvetica, STHeiTi, sans-serif;
}