软件开发

测试 Node.js,2018

测试 Node.js,2018

本文我们会展示 Node.js 测试过程中的困难部分,以及我们在 Winds 2.0 中用到的各种工具,并且在你要编写下一个测试集合时为你指明正确的方向。
Perlbrew 入门

Perlbrew 入门

用 Perlbrew 在你系统上安装多个版本的 Perl。
无密码验证:客户端

无密码验证:客户端

上一篇文章中,我们用 Go 写了一个 HTTP 服务,用这个服务来做无密码验证 API。今天,我们为它再写一个 JavaScript 客户端。
Python 字节码介绍

Python 字节码介绍

了解 Python 字节码是什么,Python 如何使用它来执行你的代码,以及知道它是如何帮到你的。
JavaScript 路由器

JavaScript 路由器

构建单页面应用(SPA)有许多的框架/库,但是我希望它们能少一些。我有一个解决方案,我想共享给大家。
lua 中神奇的表(table)

lua 中神奇的表(table)

最近在尝试配置 awesome WM,因此粗略地学习了一下 lua 。 在学习过程中,我完全被 table 在 lua 中的应用所镇住了。
闭包、对象,以及堆“族”

闭包、对象,以及堆“族”

它就好像是 makeGreeter 的词法作用域在那个时刻被关闭了,一旦需要时被具体化到一个堆对象(在这个案例中,是指返回的函数的生命周期)。因此叫做闭包。
无密码验证:服务器

无密码验证:服务器

无密码验证可以让你只输入一个 email 而无需输入密码即可登入系统。这是一种比传统的电子邮件/密码验证方式登入更安全的方法。
尾调用、优化和 ES6

尾调用、优化和 ES6

当一个函数 F 调用另一个函数作为它的结束动作时,就发生了一个尾调用。
一些常见的并发编程错误

一些常见的并发编程错误

Go 并不会阻止一些因 Go 程序员粗心大意或者缺乏经验而造成的并发编程错误。在本文的下面部分将展示一些在 Go 编程中常见的并发编程错误,以帮助 Go 程序员们避免再犯类似的错误。
3 个 Python 模板库比较

3 个 Python 模板库比较

你的下一个 Python 项目需要一个模板引擎来自动生成 HTML 吗?这有几种选择。
更深入的理解 Python 中的迭代

更深入的理解 Python 中的迭代

在这篇文章中,我们将深入探讨 Python 的 for 循环来看看它们在底层如何工作,以及为什么它们会按照它们的方式工作。
如何在 Fedora 上开始 Java 开发

如何在 Fedora 上开始 Java 开发

Java 是世界上最流行的编程语言之一。它广泛用于开发物联网设备、Android 程序、Web 和企业应用。本文将提供使用 OpenJDK 安装和配置工作站的指南。
递归:梦中梦

递归:梦中梦

递归是很神奇的,但是在大多数的编程类书藉中对递归讲解的并不好。但这种建议是很糟糕的,因为在算法中,递归是一个非常强大的思想。
gdb 如何调用函数?

gdb 如何调用函数?

我发现我可以从 gdb 上调用 C 函数。这看起来很酷,因为在过去我认为 gdb 最多只是一个只读调试工具。
初识 Python: global 关键字

初识 Python: global 关键字

在 Python 中,global 关键字允许你修改当前范围之外的变量。它用于创建全局变量并在本地上下文中更改变量。
SQL 入门

SQL 入门

使用 SQL 构建一个关系数据库比你想的更容易。
让我们做个简单的解释器(三)

让我们做个简单的解释器(三)

识别出记号流中的词组的过程就叫做 解析。解释器或者编译器执行这个任务的部分叫做 解析器。解析也称为 语法分析,并且解析器这个名字很合适,你猜的对,就是 语法分析器。
尝试 H2o 做机器学习

尝试 H2o 做机器学习

我最初计划使用 R 来训练我的数据库,但老师建议我使用一个 FOSS 机器学习框架 H2o。
gdb 如何工作?

gdb 如何工作?

最近,我使用 gdb 来查看我的 Ruby 程序,所以,我们将对一个 Ruby 程序运行 gdb 。
如何用 Python 解析 HTML

如何用 Python 解析 HTML

用一些简单的脚本,可以很容易地清理文档和其它大量的 HTML 文件。但是首先你需要解析它们。
我喜欢 Vue 的 10 个方面

我喜欢 Vue 的 10 个方面

在这篇文章中,我旨在解释为什么 Vue 适合我,为什么在上文中那些我尝试过的框架中选择它。也许你将同意我的一些观点,但至少我希望能够给大家使用 Vue 开发现代 JavaScript 应用一些灵感。
Linux 跟踪器之选

Linux 跟踪器之选

有大量的 Linux 跟踪器可供你选择。由于它们中的每个都有一个官方的(或者非官方的)的吉祥物,我们有足够多的选择给孩子们展示。
让我们做个简单的解释器(一)

让我们做个简单的解释器(一)

“如果你不知道编译器是怎么工作的,那你就不知道电脑是怎么工作的。如果你不能百分百确定,那就是不知道它们是如何工作的。”
并发服务器(四):libuv

并发服务器(四):libuv

在这一部分中,我们将使用 libuv 再次重写我们的服务器,并且也会讨论关于使用一个线程池在回调中去处理耗时任务。