使用 CNPM 搭建私有 NPM 仓库

我们在使用Nodejs的时候,使用npm仓库来发布和管理模块,我们可以从npm上下载别人发布的模块使用,也可以自己发布模块,有点类似于Maven,这是非常流行的开源社区模式。但是在企业内部,我们不希望我们的生产代码可以随意引用任何未经企业审核的代码;我们也不希望企业内部自己的模块发布给任意人员使用;还有一个重要的原因是很多企业内部无法连接互联网cnpm就是来解决这些问题的。官方的解释是cnpm=Company npm 环境配置 OS:Red Hat Enterprise Linux Server release 6.4 (Santiago) node:v4.4.5 npm:2.15.5 cnpm:2.10.0(截止到本文发布)     阅读全文
Pang Jian's avatar
Pang Jian 6月 01, 2016

使用 travis-ci 持续集成 Hexo 静态博客

Hexo是一个基于Nodejs的轻量级静态博客生成框架。静态博客生成程序会将我们所写的博客生成为一套HTML+CSS+JavaScript代码,我们将这个代码部署到诸如Github Page这样的地方就可以在世界任何一个地方访问我们的博客了。这种方案有一个非常有利的优点–免费。但是,hexo环境不是处处都有,换个地方写作变成了一件麻烦事。而且写完文章以后需要hexo g,hexo d等一系列操作,着实很麻烦。本篇文章利用Travis CI解决以上痛点。     阅读全文
Pang Jian's avatar
Pang Jian 5月 25, 2016

浏览器缓存知识归纳

写在开头:这篇文章是打算分享到单位内部的材料。归纳浏览器缓存也是对一个生产问题的分析总结出来的。这片文章经过脱敏以后发表到个人博客上面吧。 浏览器缓存(Browser Catching)是为了节约网络的资源加速浏览,浏览器在用户磁盘上对最近请求过的文档进行存储,当访问者再次请求这个页面时,浏览器就可以从本地磁盘显示文档,这样就可以加速页面的阅览。 —-摘自《百度百科》 浏览器缓存是提升网页性能的一大利器,但是,也是一把双刃剑。利用的好网页的性能会有大幅度提升,服务器的压力也会减小。利用的不好,也会遇到很多的问题。本文结合浏览器缓存的知识,结合真实案例进行分析,希望对读者有所帮助。     阅读全文
Pang Jian's avatar
Pang Jian 3月 05, 2016

2016 年,猴年快乐!

2016 年新年,祝愿所有人新年快乐,猴年吉祥。这片文章是【近期想法】主题的第二篇,上一篇有部分内容已经实现了,只是没有来得及写文章。     阅读全文
Pang Jian's avatar
Pang Jian 2月 07, 2016

我遇到一个 Bug,金额大于一千万就报错

这是一个在测试环境发现的一个BUG,感觉很有趣,便写出来分享一下。本文的灵感以及标题都来自于《我遇到一个BUG,每逢周三就崩溃》。我在银行做系统开发,“金额”基本上是最常见的字段,也是最不能出错的字段了。每一个错误都代表着实打实的资金损失,无论是客户的还是银行的。所以,作为开发人员,对这个字段也相对敏感一些。金额这个字段的规则也相对其他字段更复杂一些。举个例子来说,金额是一个数字,可以是这样12;当然也有小数点的情况,比如这样12.34;人们还有这样的习惯,每隔3位有一个逗号分隔符,比如这样1,000.23。可是一千万是个什么特殊情况,为什么会有问题呢?     阅读全文
Pang Jian's avatar
Pang Jian 1月 13, 2016

使用 Pjax 优化你的网站

Ajax(Asynchronous Javascript and XML)的魅力在于它的每一个成员都不是新技术,经过奇妙的结合却掀起了WEB2.0的革命。Pjax是pushState和ajax的封装,同样每一个都算不上新技术,结合起来却有着神奇的效果。     阅读全文
Pang Jian's avatar
Pang Jian 12月 03, 2015

javascript 前后端代码复用 -browserify

Nodejs将javascript带上了一个新的高度,让之运行于浏览器端的javascript可以运行在服务器端。但是Nodejs遵循Commonjs规范,不能直接运行在浏览器端。虽然是同一种语言,但是前后端有着自己的库,不能复用真是一种浪费。这时候一个神器出现了,Browserify。通过预编译,可以将Commonjs规范的后端Nodejs代码直接可以运行在浏览器端。打通了端后端代码复用的壁垒,为nodejs程序开辟了一片新天地。     阅读全文
Pang Jian's avatar
Pang Jian 11月 18, 2015

Jackson 中的那些坑

不符合驼峰规范的变量“驼峰命名法”请自行百度。简单的来说就是变量的第一个单词以小写字母开始其他单词首字母大写,或者全部单词首字母都大写,分别称为“小驼峰”和“大驼峰”     阅读全文
Pang Jian's avatar
Pang Jian 10月 30, 2015

近期想法汇总 2015 年 9 月

打算新开一类主题,主要用来记录近期的一些想法,有想好了要做的事情,也有要做但是还没有思路的事情。类似LifeHacker那样,不仅仅有编程相关。可以有技术、科技、设计、生活想法等等,如果时机成熟,这一个个的点子实践以后会形成一片单独的文章,如果我一直没有想法,看到这篇文章的人也可以在评论里帮我出出主意。这篇文字是第一次尝试。     阅读全文
Pang Jian's avatar
Pang Jian 9月 15, 2015

JSON 与 Java 对象的事

很久没有写了,来清理一下杂草。这片文字是团队内其他小伙伴经常混淆的一个知识点,最初的目的是写个东西好让大家用到的时候可查,由于原文涉及公司的一个框架,不便写出来。该框架其实引用的开源框架Jackson,所以本文直接介绍Jackson部分。其实说不上介绍,约等于一个学习笔记。     阅读全文
Pang Jian's avatar
Pang Jian 9月 12, 2015