-
介绍几个值得一玩的AR/VR项目。其中的几个头显对消费者没有吸引力。但对于学习和理解AR/VR的基本原理,或者开发一些早期项目是有帮助的。它们为探索AR/VR开了一道门。现在这个时代对创新更友好了。技术更为开放,基础设施更完善,信息更易获取。十年前我不会想自己组装一台智能手机。但是现在你如果想组装一台AR或者VR头显,并实现一些有趣的早期项目,其实难度并不大。当然这距离将它们提供给普通消费者使用还有很长距离。
-
这篇文章会回顾货币,以及比特币的历史。希望能看清比特币在货币史上的位置。然后我们会看看比特币在人们之间达成价值共识的过程。这其中是否存在特别的历史的,外部的,以及比特币自己的内在原因?
-
比特币的出现使我们看到了一种在金融系统进行去中心化改革所需要的基础技术。我们是否应该接受和推进去中心化改进呢?受比特币的启迪,在更广泛的社会领域是否应该接受和推进去中心化改革呢?答案并不显而易见。
-
在了解到比特币之后,我学习到这是一个对游戏也能产生影响的技术。将比特币和游戏结合,会产生一些我们从未见过的有趣变化。简单来讲,比特币可以改进游戏过程,使得游戏更为公平。这篇文章讨论使用比特币改进游戏的各种可能。看看是否有可能利用比特币设计出完美游戏。
-
Copy,拷贝,或者复制,看起来挺简单。但它其实并不简单。深入讨论拷贝会触及到编程语言的一些基础问题。这个问题是:“可变,还是不可变?”。它们各有优点。伴随巨大优点的,通常是沉重的代价。我们选择了一条路之后,特别是在遇到荆棘时,通常会思考:另一条路是不是会更好一些?
-
Java 对各种数据结构做了更细致的区分。这样程序员可以为不同的场景选择最合适的数据结构,以编写出性能更好的代码。这是一件好事。当然,这也增加了这门语言的学习成本。Java 程序员需要理解清楚各种 Array,Set,Map 的各个具体实现之间的差别,才能很好地应用它们。
-
在日常工作中,作为平常人,我们能体会到的和这种科学研究过程稍有类似的过程可能是:那些在书中学到的抽象的知识,优雅地解决了实际工作中的遇到的问题。这时,就能更深刻理解某种理论或者知识,稍稍体悟到思维结晶所表现出的美感。这种感觉就像在一片黑暗中触碰到了吉光片羽。
-
iOS 开发中有几种页面调用方案。这篇文章中,我们聊一聊 iOS 中的 view controller 调用方案。简单分析一下它们的实现原理与存在的问题。最后会介绍一下 FRDIntent,一种借鉴了 Android Intent 的页面调用方案。
-
这篇是Infoq关于`豆瓣混合开发框架Rexxar`的一个采访的文本。主要回答了我们为何造了Rexxar这个轮子。我们也表达了自己对移动端混合开发的一些看法。对于在移动开发中采用Web技术,Rexxar应该会有一定的借鉴经验。
-
豆瓣在 2014 年聚合了移动端业务,推出了一款叫“豆瓣”的App。随着豆瓣App 的发展,豆瓣越来越多的业务线被纳入其中。豆瓣App 代码量越来越多,功能越来越复杂,体积越来越庞大。为了更从容地应对这种状况,使得整个项目更健康,我们实施了模块化。
-
最近两年,我们在移动混合开发实践方面做了一些努力。主要产出是一个名为 Rexxar 的项目。现在,我们把这个项目开源了。一方面,是为了给大家提供一些借鉴;另一方面,是为了提高这个项目的质量。接受大家的意见和建议。
-
乔治毕业之后进入一家互联网创业公司,领取到了一笔期权。我将通过乔治的故事了解一下期权。
-
乔治创业历时五年,公司成功上市。我们将通过乔治的创业故事了解一下创业公司的融资过程。
-
“LeetCode Swift” 二叉树部分的总结,主要涉及二叉树的遍历。
-
“移动开发中的 Web 技术” 之二:介绍豆瓣的混合开发的实现,以及混合开发实践中的一些经验。
-
“移动开发中的 Web 技术” 之一:介绍移动开发中 Web 技术的历史。移动开发领域我们一直面临着 Web 和 Native 这两条技术路线的选择。这种选择并不是第一次,在PC时代我们就面临过一次。后来 Web 占了上峰。那么移动时代呢?历史也许会重演。
-
这一篇讨论递归函数,以及递归和迭代在计算过程上会呈现出不同的形态。
-
移动互联网发展迅速,聊聊此时此刻移动技术的现状。
-
看到一本比较简单的 Scheme 教程。中文翻译进行了大半,还缺最后几章,便将其补全了。教程的名字为《Yet Another Scheme Tutorial》。
-
“Swift 中的编程范式” 之十:Swift 中有两个声明变量的关键字:`let`和`var`。这两个关键字背后存在着两种截然不同的编程思想:函数式编程和命令式编程。Swift对这两种编程思想进行了融合:它允许你使用引入赋值所带来的简单直观的建模方法。同时也鼓励你使用不变性缓解各类并发问题。
-
“Swift 的编程范式” 之九:本文讨论闭包的相关概念,大部分代码使用Swift编写。Swift对闭包有着良好的支持。这是因为,Swift被设计成一门一定程度上支持函数式编程范式的编程语言。而函数式编程和闭包有着紧密的联系。本文着重讨论的也是函数式编程和闭包之间的关系。
-
“Swift 的编程范式” 之八:这篇短文中,我们回顾了设计模式的概念,并讨论了在现代编程语言背景下,设计模式的一些变化。然后使用Swift语言演示了5个设计模式和新的语言特性之间的关系:高阶函数和命令模式,一等函数和策略模式,柯里化函数和抽象工厂模式,扩展和适配器模式,运算符重载和解释器模式。
-
“Swift 的编程范式” 之七:本文主要基于一个小例子的演化过程,简单描述和比较了一下背后涉及的几种编程范式。编程的主要的工作是在对现实世界的各种事物和现象进行抽象。不同的编程范式会有不同的抽象方法,和适用领域。在使用Swift这种支持多种编程范式的编程语言时,理解多种编程范式将对更好的使用这门语言有很大帮助。
-
“Swift 的编程范式” 之六:以 Swift 为例,聊一下多范式编程语言。
-
“Swift 的编程范式” 之五:Swift 支持泛型编程,简单总结一下 Swift 中的泛型。
-
“Swift 的编程范式“ 之四:Swift 主要编程范式是面向对象编程,这一篇总结一下 Swift 的面向对象特性。
-
“Swift 的编程范式” 之三:Swift 支持函数式编程,这一篇介绍 Swift 中的惰性计算。
-
“Swift 的编程范式” 之二:Swift 支持函数式编程,这一篇介绍不变性(immutable)。
-
“Swift 的编程范式” 之一:Swift 支持函数式编程,这一篇介绍 Swift 中的函数。
-
OS X 和 iOS 中的多线程技术。
-
iOS 中使用 Keychain Services 在应用间共享数据。
-
iOS 开发中的证书和钥匙。
-
当向装饰器传入参数后,装饰器的行为有了巨大变化。
-
这项令人惊叹的功能终于出现了,伴随它的是一些关于其是否有用的关注。
-
Objective-C 的一种设计模式:类簇。
-
iOS 5 中最大的变化应该就是自动引用计数器,简称 ARC。
-
《From C++ to Objective-C》中文版试译。
-
我们将讨论一下属性(Properties)和 Objective-C。