我终于弄懂了各种 Web 前端 Build 工具

即使对于一些经验丰富的开发者来说,诸多的前端工具还是会让他们感到头痛,例如我。解决这个问题的最好办法,就是在概念上理解他们的工作方式,已经他们之间相互配合的方式。本文详细介绍了目前各种常用的Web前端 Build 工具的概念、区别及各自的使用场合,这些 Build 工具包括 Node/NPM/Grunt/Gulp/Bower/Webpack/Browserify/Yeoman 等。

How Rsync Works - A Practical Overview

In this document I hope to describe: 1) A non-mathematical overview of the rsync algorithm. 2) How that algorithm is implemented in the rsync utility. 3) The protocol, in general terms, used by the rsync utility. 4) The identifiable roles the rsync processes play.

互联网产品如何应用二维码这把利刃

二维码(dimensional barcode,大家习惯称QR Code)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的。简单粗暴的解释就是:二维码它就是把一段纯文本用图形样式转换出来了,以便于快速扫描读出。

Javascript 设计模式之 Module 设计模式

JavaScript 有一个特性叫做隐式全局变量:不管一个变量有没有用过,JavaScript 解释器反向遍历作用域链来查找整个变量的 var 声明,如果没有找到 var,解释器则假定该变量是全局变量;如果该变量用于了赋值操作的话,之前如果不存在的话,解释器则会自动创建它。

CodeIgniter 3 之 Session 机制详解

CI3的 Session 类库设计理念是更加接近原生的函数和方法,同时为了保持向后兼容性,原来的方法也尽量保留了下来。与此同时,原来的 flash data 理念做了新的设计,加入了 temp data 的概念。

GitHub Flow

So, why don't we use git-flow at GitHub? Well, the main issue is that we deploy all the time. The git-flow process is designed largely around the "release". We don't really have "releases" because we deploy to production every day - often several times a day. We can do so through our chat room robot, which is the same place our CI results are displayed.

Git 分支最佳实践

本文介绍我一年前在自己的项目(包括工作项目和私人项目)中引入的git分支模式,分为主要分支和辅助分支。其中,主要分支包括2个长期存在的分支:master 和 develop;而辅助分支则包括特性分支、发布分支和紧急修复分支。

Creating a RESTful API with PHP

What is REST? REST, or in the full form, Representational State Transfer has become the standard design architecture for developing web APIs. At its heart REST is a stateless client-server relationship; this means that unlike many other approaches there is no client context being stored server side (no Sessions). To counteract that, each request contains all the information necessary for the server to authenticate the user, and any session state data that must be sent as well.

Javascript 实现继承的几种方式

大多OO(Object-Oriented)语言都支持两种继承方式:接口继承实现继承,而 ECMAScript 中无法实现接口继承,ECMAScript 只支持实现继承,而且其实现继承主要是依靠原型链来实现。本文介绍了6种在Javascript里面实现继承的方式,分别是:原型链、借用构造函数、组合继承、原型式继承、寄生式继承和寄生组合式继承。希望对你理解「面向对象Javascript程序设计」有帮助。

ES5, ES6, ES2016, ES.Next: JavaScript 的版本是怎么回事?

1996 年,网景将 JavaScript 提交给 ECMA International(欧洲计算机制造商协会)进行标准化,并最终确定出新的语言标准,它就是 ECMAScript。自此,ECMAScript 成为所有 JavaScript 实现的基础,不过,由于 JavaScript 名字的历史原因和市场原因(很显然 ECMAScript 这个名字并不令人喜欢……),现实中我们只用 ECMAScript 称呼标准,平时都还是使用 JavaScript 来称呼这个语言。