Credential Management API是截至目前(17年3月)仍在W3C草案阶段的标准,它允许网站开发者将用户认证信息(如用户名和密码)存储在浏览器中,从而可以让用户在一个设备登录后在其他设备上被自动登录,而无需再填写认证信息。在2016年4月份Chrome发布了一个W3C Credential Management API的最初实现。

Continue reading

In Object Oriented Programming, we deal with classes and their variations. A subclass is conceptually a more concrete realization of it’s superclass. Subclasses appear to be a family of classes with certain extent of variation.

Variations are also introduced in functions. A function can derive a family of functions that are similar but with the same purpose. We will use Python functions as example to demonstrate the use of function variations, and effectively how it changes our way of writing clean code and tests.

Continue reading

代码审查(Code Review)是很多大公司里面都有的一个流程。它指的是一个人编码,另有几个人负责审查,并提出修改意见。代码审查在大多数情况下对公司整体的工程质量是有提高的,但是如果使用不当的话,很可能反倒会降低工程质量。代码审查究竟在一个组织里面是有正面效应或者是负面效应取决于很多因素,而我认为其中最重要的是代码审查在开发过程中扮演的角色。

Continue reading

我在工作中采用Reactive Programming(RP)已经有一年了,对于这个“新鲜”的辞藻或许有一些人还不甚熟悉,这里就和大家说说关于RP我的理解。希望在读完本文后,你能够用Reactive Extension进行RP。

Continue reading

在学习一些语言的时候,你经常会听到“函数是一等公民”这样的描述。那么究竟函数在这类语言中扮演着怎么样的一个角色?它和函数式编程、无状态设计、封装抽象有什么千丝万缕的联系?

Continue reading