JUnit + Mockito 单元测试的风云际会

JUnit 是 2015 年 Java 开发者引用最多的库,是 Java 单元测试框架里无可争议的 No.1。JUnit 基本上能覆盖大部分接口的测试,但如果待测接口依赖外部服务,比如...

读 Flask 源码:Context

Flask Context 类似 Spring 框架的核心组件 Context,给应用程序提供运行时所需的环境(包含状态、变量等)的快照。如果程序本身就包含了运行所需的完备条件,那...

跨域请求之 JSONP 和 CORS

Web 开发中,跨域请求是个经常碰到的问题,因为涉及到网站安全,所以浏览器是拒绝跨域请求的。通常解决跨域会采用 JSONP(JSON with Padding) 和 CORS(Cross-Origin Resource Sharing)。 首先理...

Java 常用容器小结

无论是什么编程语言,容器都是非常重要的概念,在 Java 的实际开发中更是无处不在,各种 List、Set、Map。很多时候就是随着编程的惯性用了 ArrayList 或者...

理解 Python 装饰器

前一篇水文里记录的 Click 包,大量的运用了 Python 的装饰器。装饰器是非常实用的编程思想,Java 开发里经常看到的 AOP 也是同样的思想。Python 装饰器使用...

Python Click 学习笔记

Click 是 Flask 的团队 pallets 开发的优秀开源项目,它为命令行工具的开发封装了大量方法,使开发者只需要专注于功能实现。恰好我最近在开发的一个小工具需要在命令行...

JDK 8 中 HashMap 的工作原理

Java 容器类中,HashMap 是一个绕不开的重点,无论是实际开发还是求职面试。由于对 JDK 6 下 HashMap 的讨论已经很多了,而且 JDK 8 对 HashMap 做了比较大的改进,本文...

Spring AOP 本地模拟线上 RPC

成熟的互联网公司内部一般都会有多个线上环境,像在 JD,就有测试环境,预发布环境,生产环境。开发过程通常是现在本地编写代码,功能差不多了提到测...

JetBrains IDE Vim 模式的方案

之前的一篇博客翻译了 IntelliJ IDEA 的默认快捷键操作。快捷操作的功能覆盖面已经很全了,但如果想进阶键盘流,可能还需要一点文本编辑上的快操,比如 Vim 模式。用...

Hexo 主题美化

小站有段时间没折{no}腾{zuo}前{no}端{die}了,在浏览别的个人站时总会时不时被里面的设计吸引到,最近闲着没事干,就把别人的主题...