西维蜀黍

【JavaScript】JavaScript 单元测试框架:Jasmine

简介

Jasmine 是一款完全开源的基于行为驱动(BDD,behavior-driven development)的 JavaScript 测试框架,它不依赖于其他任何 JavaScript 组件,也不需要 DOM。它有灵活而清晰的语法,可以帮助我们最高效的完成测试代码。

  ...


【Operating System】环境变量(Environmental Variables)

我们在安装一些编程环境时,经常需要配置环境变量。但是你是否完全了解其意义呢?

1 粗谈环境变量

环境变量相当于给系统或用户应用程序设置的一些参数,具体起什么作用这当然和具体的环境变量类型有关。比如path,是告诉系统,当要求系统运行一个程序,而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到哪些目录下去寻找。

  ...


【Node.js】Node.js 与 NPM 的模块版本管理

在 【Node.js】Node.js与NPM入门 中,我们介绍了Node.js与NPM的相关基础知识。

Node.js 与 NPM自身的版本管理

首先,可先查看当前 Node.js 与 npm的版本:

$node -v
//v7.2.1

$npm -v
//v4.3.0
  ...


【Network】DNS原理分析

记得有一次面试,被问道:当在浏览器中输入一个URL后会发生什么。就个人而言,很喜欢这样发散性的问题,因为客观的来说,这类问题能够客观地考察其对HTTP、Web的理解,也不用担心其有意准备了面试答案,稍微深入某个细节,就可了解其掌握程度。而且,从不同的角度看完全可以得出不同的分析过程。

  ...


【C#】Visual Studio 2017 一边Debug,一边修改代码

好久没写C#了,最近在学习著名科学上网工具 shadowsocks-windows 的源代码,想着可以边断点调试,边加上一些注释以方便理解,stackoverflow 和 msdn 随便翻了一下,竟发现了Debug新世界。

  ...


【Git】Git之忽略文件(gitignore)

今天分享一下Git中一个非常重要的文件.gitignore,这个文件用来定义哪些文件或文件夹,Git不需要跟踪,从而也不需要将这些文件添加到版本管理中。

  ...


【Engineering】持续集成(Continuous integration)

这两天在TeamCity(一个Continuous integration 系统)上配置自己负责的一个Project,mark一下对**持续集成(Continuous integration)**的理解。

在传统软件开发过程中,集成通常发生在每个 developer 都完成了各自的代码开发工作之后。在项目尾声阶段,通常集成还要痛苦的花费数周或者数月的时间来完成。如今,更强调敏捷开发、快速迭代的概念。持续集成满足了这一需求,是指将集成提前至开发的过程中的一种实践方式,让构建、测试和集成代码更经常反复地发生。

  ...


【Data Format】JSON

JSON 定义

JSON (JavaScript Object Notation) is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays (or other serializable values).

It is a common data format with a diverse range of functionality in data interchange including communication of web applications with servers.

JSON is a language-independent data format. It was derived from JavaScript, but many modern programming languages include code to generate and parse JSON-format data. JSON filenames use the extension .json.

JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.

  ...


【JavaScript】JavaScript 定时器深入解析

JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInterval()这两个函数来完成。它们向任务队列添加定时任务。

  ...


【HTTP】URL总结

我每天都在使用URL,每天和他打交道。但是,在阅读《HTTP权威指南》后,才发现我对URL的理解是不全面的、碎片化的。

  ...