软件开发

Linux 内核里的数据结构——双向链表

我们将会首先从双向链表数据结构开始介绍内核里的数据结构。为什么?因为它在内核里使用的很广泛,你只需要在 free-electrons.com 检索一下就知道了。
2016-05-10
5分钟阅读时长

用 Python 打造你的 Eclipse

Eclipse 高级脚本环境(EASE)项目虽然还在开发中,但是必须要承认它非常强大,它让我们可以快速打造自己的Eclipse 开发环境。
2016-04-25
6分钟阅读时长

在 Apache Hive 中轻松生存的12个技巧

Hive 可以让你在 Hadoop 上使用 SQL,但是在分布式系统上优化 SQL 则有所不同。这里是让你可以轻松驾驭 Hive 的12个技巧。
2016-04-07
4分钟阅读时长

Node.js 4.0 中的 ES 6 特性介绍

Node.js 4.0.0 已经发布了。这是和 io.js 合并之后的首个稳定版本,它带来了一系列的新特性,支持 ES 6的大部分特性。已经有很多 ES 6 的特性介绍了,这里我们介绍一下该怎么使用它们。 1. 模板字符串 如果你要在 JavaScript 中创建多行字符串,你可能会使用如下的语法: var message = .join(’\n’); 对于少量字符串这还算合适,但是如果比较多就会显得混乱。不过,有个聪明的开发者提出了一个叫multiline的技巧: var multiline = require(‘multiline’); var message = multiline(function () {/* The quick brown fox jumps over the l
2015-09-14
3分钟阅读时长

史上最复杂的验证邮件地址的正则表达式

用正则表达式验证邮件地址似乎是一件简单的事情,但是如果要完美的验证一个合规的邮件地址,其实也许很复杂。 邮件地址的规范来自于 RFC 5322。有一个网站 emailregex.com专门列出各种编程语言下的验证邮件地址的正则表达式,其中很多正则表达式都是我听说过而从未见过的复杂我想说,做这个网站的程序员是被邮件验证这件事伤害了多深啊! 其实,在产品环境中,一般来说并不需要这么复杂的正则表达式来做到99.99%正确。一般来说,从执行效率和测试覆盖率来说,只需要一个简单的版本即可: /^+@+.{2,4}$/i 那么下面我们来看看这些更严谨、
2015-08-05
3分钟阅读时长

PHP 安全编程建议

简介 要提供互联网服务,当你在开发代码的时候必须时刻保持安全意识。可能大部分 PHP 脚本都对安全问题都不在意,这很大程度上是因为有大量的无经验程序员在使用这门语言。但是,没有理由让你因为对你的代码的不确定性而导致不一致的安全策略。当你在服务器上放任何涉及到钱的东西时,就有可能会有人尝试破解它。创建一个论坛程序或者任何形式的购物车,被攻击的可能性就上升到了无穷大。 背景 为了确保你的 web 内容安全,这里有一些常规的安全准则: 别相信表单 攻击表单很简单。通过使用一个简单的 JavaScript 技巧,你可以限制你的表
2015-07-23
14分钟阅读时长

如何用Perl访问SQLite数据库

SQLite是一个零配置、无服务端、基于文件的事务型数据库系统。由于它的轻量级,自包含和紧凑的设计,所以当你想要集成数据库到你的程序中时,SQLite是一个非常不错的选择。在这篇文章中,我会展示如何用Perl脚本来创建和访问SQLite数据库。我演示的Perl代码片段是完整的,所以你可以很简单地修改并集成到你的项目中。 访问SQLite的准备 我会使用SQLite DBI Perl驱动来连接到SQLite3。因此你需要在Linux中安装它(和SQLite3一起)。 Debian、 Ubuntu 或者 Linux Mint $ sudo apt-get install sqlite3 libdbd-sqlite3-perl CentOS、 Fedor
2015-07-06
3分钟阅读时长