Credential Management API是截至目前(17年3月)仍在W3C草案阶段的标准,它允许网站开发者将用户认证信息(如用户名和密码)存储在浏览器中,从而可以让用户在一个设备登录后在其他设备上被自动登录,而无需再填写认证信息。在2016年4月份Chrome发布了一个W3C Credential Management API的最初实现。
Continue reading
Credential Management API是截至目前(17年3月)仍在W3C草案阶段的标准,它允许网站开发者将用户认证信息(如用户名和密码)存储在浏览器中,从而可以让用户在一个设备登录后在其他设备上被自动登录,而无需再填写认证信息。在2016年4月份Chrome发布了一个W3C Credential Management API的最初实现。
Continue readingIn 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在程序设计的世界里面有两种很基本的设计模式,那就是迭代(iterative)和递归(recursive)。这两种模式之间存在着很强的一致性和对称性。
Continue reading在学习一些语言的时候,你经常会听到“函数是一等公民”这样的描述。那么究竟函数在这类语言中扮演着怎么样的一个角色?它和函数式编程、无状态设计、封装抽象有什么千丝万缕的联系?
Continue reading我研究JavaScript闭包(closure)已经有一段时间了。我之前只是学会了如何使用它们,而没有透彻地了解它们具体是如何运作的。那么,究竟什么是闭包?
Continue reading我最近围绕着Express构建应用,尝试用不同的方法来对Express的中间件进行单元测试。今天通过Workshop的形式,一步一步地向大家介绍我的测试方式。
Continue reading上次在《JSON Web Token - 在Web应用间安全地传递信息》中我提到了JSON Web Token可以用来设计单点登录系统。我尝试用八幅漫画先让大家理解如何设计正常的用户认证系统,然后再延伸到单点登录系统。
Continue readingJSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。
Continue readingStrong opinion, weakly held.
Software Engineer at Facebook