摘要:
时隔 15.6 个月,终于发布了一个新版本 v1.1.0。
新版本除了包含了这些日子收集到的无数的小改进及 bug fixes,也有一些新功能。本文尝试从使用者的角度,简单介绍一下这些功能和沿由。 阅读全文
随笔分类 - 杂谈
RapidJSON 代码剖析(四):优化 Grisu
2015-06-30 13:03 by Milo Yip, 10769 阅读, 收藏, 编辑
摘要:
我曾经在知乎的一个[答案](http://www.zhihu.com/question/22498967/answer/29472607)里谈及到 V8 引擎里实现了 Grisu 算法,我先引用该文的内容简单介绍 Grisu。然后,再谈及 RapidJSON 对它做了的几个底层优化。 阅读全文
RapidJSON 代码剖析(三):Unicode 的编码与解码
2015-06-03 17:34 by Milo Yip, 13338 阅读, 收藏, 编辑
摘要:
RapidJSON 希望尽量支持各种常用 UTF 编码,用[四百多行代码][encodings.h]实现了 5 种 Unicode 编码器/解码器,另外加上 ASCII 编码。本文会简单介绍它的实现方式。 阅读全文
RapidJSON 代码剖析(二):使用 SSE4.2 优化字符串扫描
2015-05-20 14:27 by Milo Yip, 7583 阅读, 收藏, 编辑
摘要:
现在的 CPU 都提供了[单指令流多数据流][单指令流多数据流](single instruction multiple data, SIMD)指令集。最常见的是用于大量的浮点数计算,但其实也可以用在文字处理方面。
其中,SSE4.2 包含了一些专为字符串而设的指令。我们通过使用这些指令,可以大幅提升某些 JSON 解析的性能。 阅读全文
RapidJSON 代码剖析(一):混合任意类型的堆栈
2015-05-14 09:53 by Milo Yip, 9421 阅读, 收藏, 编辑
摘要:
大家好,这个专栏会分析 RapidJSON 中一些有趣的 C++ 代码,希望对读者有所裨益。 阅读全文
C++强大背后
2010-09-17 00:56 by Milo Yip, 99705 阅读, 收藏, 编辑
摘要:
在31年前(1979年),一名刚获得博士学位的研究员,为了开发一个软件项目发明了一门新编程语言,该研究员名为Bjarne Stroustrup,该门语言则命名为——C with classes,四年后改称为C++。C++是一门通用编程语言,支持多种编程范式,包括过程式、面向对象(object-oriented programming, OP)、泛型(generic programming, GP)... 阅读全文
在博客里轻松使用LaTeX数学公式
2010-04-26 01:32 by Milo Yip, 23396 阅读, 收藏, 编辑
摘要:
笔者最近的博文有不少数学相关内容,发现利用一些网上服务、jQuery和CSS,可以更轻松地在博客里使用\LaTeX语法排版方程式。\LaTeX是基于\TeX的排版系统。而\TeX就是美国著明计算机教授高德纳(Donald E. Knuth),为了编写他的巨著《计算机程序设计艺术(The Art of Computer Programming)》而设计的系统,对于数学公式的排版支援十分强大。线上La... 阅读全文
史上最强女游戏程序员
2010-03-08 17:33 by Milo Yip, 60718 阅读, 收藏, 编辑
摘要:
也许你听说过John Carmack 和Tim Sweeney等大牛的名字,而向来游戏工业都是阳盛阴衰,适逢国际妇女节,今天我为大家介绍游戏业界一位史上最强女游戏程序员:Corrinne Yu。 简历以下是她在游戏业界内的简历 微软Halo团队首席引擎架构师(principal engine architect) 微软游戏工作室的首位女性技术主管 微软的Direct3D顾问委员会及图形顾问委员会的... 阅读全文
《有点失望》的经过及其背后意义
2010-02-06 19:48 by Milo Yip, 23132 阅读, 收藏, 编辑
摘要:
《有点失望》本来是一篇简单的、没人关注的书评,但它产生的回响,确实是值得探讨当中的意义。事件经过因为我是当事人,可能对事件经过有偏颇,如发现和事实不符或不全面,请不吝指正。2010年1月14日 我在当当看过介绍和书评, 买了《0 bug--C/C++商用工程之道》2010年1月23日 花了几个晚上看了第一至第三章,因为错处太多觉得看不下去,便于清晨在豆瓣撰写了《有点失望》,并评为两星,主要评论内容... 阅读全文