摘要: 开发CLI工具过程中,为了便于扩展,将CLI的实现分为基础功能和扩展功能。基础功能包括init、build、lint、publish等伴随工程从初始化到最终发布到生产环境,也即为CLI 的core。扩展功能包括规范检测、代码生成、图片上传等和多个平台集成的开发配套服务设施。本篇文章将会叙述如何优雅的阅读全文
posted @ 2017-08-08 11:50 cpselvis 阅读(198) 评论(1) 编辑
摘要: 爬虫的基本流程 网络爬虫的基本工作流程如下: 首先选取一部分精心挑选的种子URL 将种子URL加入任务队列 从待抓取URL队列中取出待抓取的URL,解析DNS,并且得到主机的ip,并将URL对应的网页下载下来,存储进已下载网页库中。此外,将这些URL放进已抓取URL队列。 分析已抓取URL队列中的U阅读全文
posted @ 2017-06-13 16:18 cpselvis 阅读(1965) 评论(26) 编辑
摘要: 导语:当Javascript的性能遭遇瓶颈,或者需要增强Javascript能力的时候,就需要依赖native模块来实现了。 应用场景 日常工作中,我们经常需要将原生的Node.js模块做为依赖并在项目中进行使用。下面有个列表,你可能对它们的名字很熟悉: "node sass" 将sass文件编译成阅读全文
posted @ 2017-05-31 22:13 cpselvis 阅读(315) 评论(0) 编辑
摘要: 导语:通常而言,Node.js的应用场景有前后端分离、海量web页面渲染服务、命令行工具和桌面端应用等等。本篇文章选取CLI(Command Line Tools)子领域,来谈谈Node.js编写CLI的实践,让CLI切实解决实际工程问题。 Why Node.js? 常用的用来编写CLI的语言有 p阅读全文
posted @ 2017-05-14 16:26 cpselvis 阅读(333) 评论(0) 编辑
摘要: 前言 随着开发团队不断发展壮大,在人员增加的同时也带来了协作成本的增加;业务项目越来越多,类型也各不相同。常见的类型有基础组件、业务组件、基于React的业务项目、基于Vue的业务项目等等。如果想要对每个项目进行一些规范上的约束比如Git提交规范、Javascript规范简直难于登天。所有的这些,只阅读全文
posted @ 2017-03-27 23:25 cpselvis 阅读(426) 评论(0) 编辑
摘要: 目的 统一团队Git commit日志标准,便于后续代码review,版本发布以及日志自动化生成等等。 统一团队的Git工作流,包括分支使用、tag规范、issue等 Git commit日志参考案例 "angular" "commit message test project" "babel pl阅读全文
posted @ 2017-03-04 15:33 cpselvis 阅读(321) 评论(0) 编辑
摘要: 导语:任何软件项目都是一个协作项目,它至少需要2个开发人员参与,当原始的开发人员将项目开发几个星期或者几个月之后,项目步入正规。不过他们或者后续的开发人员仍然需要经常提交一些代码去修复bug或者实现新的feature。我们经常有这种感受:当一个项目时间过了很久之后,我们对于项目里面的文件和函数功能渐阅读全文
posted @ 2017-02-21 14:09 cpselvis 阅读(512) 评论(3) 编辑
摘要: async / await是ES7的重要特性之一,也是目前社区里公认的优秀异步解决方案。目前,async / await这个特性已经是 "stage 3" 的建议,可以看看 "TC39的进度" ,本篇文章将分享async / await是如何工作的,阅读本文前,希望你具备Promise、genera阅读全文
posted @ 2017-01-23 17:52 cpselvis 阅读(9827) 评论(3) 编辑
摘要: 在上一篇文章 "在Node.js中使用RabbitMQ系列一 Hello world" 我有使用一个任务队列,不过当时的场景是将消息发送给一个消费者,本篇文章我将讨论有多个消费者的场景。 其实,任务队列最核心解决的问题是避免立即处理那些耗时的任务,也就是避免请求 响应的这种同步模式。取而代之的是我们阅读全文
posted @ 2017-01-18 00:28 cpselvis 阅读(431) 评论(0) 编辑
摘要: 在前一篇文章中 "可伸缩架构简短系列" 中提到过关于异步的问题。当时推荐使用RabbitMQ来做任务队列的实现方案。本篇文章以Node.js为例子,来实际操作如何和RabbitMQ进行交互。 介绍 RabbitMQ是一个消息代理。它最初的思想特别简单:接受并且转发消息。你可以将它想象为邮局:当你将邮阅读全文
posted @ 2017-01-16 11:46 cpselvis 阅读(1102) 评论(0) 编辑