为艺术而技术

Qingfei Yuan

Written by Qingfei Yuan who builds useful things.

JS同步与异步

17 May, 2019

JS本身是单线程的,默认当然就是同步的。具体实现原理,请阅这篇文章。但是可以很方便的实现异步函数。同步函数异步化以及异步函数同步化是我们经常遇到的问题,下面逐一解释。Update on 20190620: 增加async/await…

SQL Server主键最大之后

16 May, 2019

通常数据库的主键都有一个最大值,如果你有一个产品有幸运行足够长的时间,那么你也将“有幸”遇到这个问题错误预防以下这个脚本可以让你知道你的数据库中有那些表的主键已经到达其类型的百分比了。比如如果到达95%,你就要准备了。方法先做备份创建新表,这次注意使用bigint…

懒评估

09 May, 2019

懒评估(Lazy Evaluation,下面简称LE)顾名思义就是和紧评估(Strict Evaluation, SE)对应,是指延迟计算直到需要的时候,如果只是这样,我们称它为“按名”(by name…

协变与逆协变

06 May, 2019

假定A <: B (A是B的子类),如果TA <: TB,那么我们就说T是协变的(covariant)。如果TB <: TA,那么我们说T是逆协变的(contravariant)。如果TB和TA没有从属关系,我们就说T是非协变的(invariant)。JavaJava…

Spring Test

06 May, 2019

Spring有spring-test, 加之Mockito和Junit,使得Test变得容易。@RunWith(SpringJUnit4ClassRunner.class) 和 @ContextConfiguration(locations…

Hello World

04 May, 2019

前情提要两年前(2017)搞了一个, 也就是这里,采用的当时流行的Jekyll,它是基于Ruby语言的。但是它有个很诱人的特点就是可以很方便的免费使用Github Pages来做静态网站。步骤如下:选择一个theme,Jekyllthemes里有很多,我采用的是Minimal…

© 2019 - 2020 yuanqingfei
Creative Commons License