构建过程抽象

3)将有关认识与那些在实际中和他同在的所有其他认识隔离开,这就是抽象
SICP 第一章
现存的许多威力强大的程序设计技术,都依赖于填平在「被动的」数据和「主动的」过程之间的传统划分
SICP 第一章

阅读更多

递归、动态规划和迭代

每一个计算机程序都是现实中或者精神中的某一个过程的一个模型
SICP 序
在这一层次的课程里,最基本的材料并不是特定的程序设计语言语法,不是有效计算某种功能的巧妙算法,也不是算法的数学分析或者计算的本质,而是一些能够用于控制大型软件系统的智力复杂性的技术
SICP 前言

阅读更多

有关动力的模型

缘起

可能和许多人一样我也有一些曾经想要学习然而却最终没有去进行学习的目标,需要举起例子的话很容易,不过我更想弄明白的是这些例子背后共通的原因。这就引发了我对动力的思考。

阅读更多

Git hooks 的几个用例

自动化是提高开发效率的有效手段之一。在源码管理过程中要实现自动化,必须能够知道源码管理工具内部的事件进行状态,显然对于这些独立工具是没办法像在同一个程序中一样进行类似 KVO 式的外部监听,好在 Git 就像一个设计完备的库一样提供了部分关键流程的调用接口,也就是 githooks。

阅读更多

为什么数组下标从0开始

从0开始记数经常被作为一个人是一名程序员的象征,在大多数主流编程语言中数组的记数都是以0为首位,今天读了 Dijkstra 的一篇旧文结合我的理解来谈谈为什么数组记数从0开始。

阅读更多

做产品的一年

2013年7月我毕业,开始从事一个叫做产品助理的工作,在一家互联网公司。2013年是产品这个概念最疯传的一年,那一年所有人都在谈论张小龙的产品理念,那一年所有人都要跟你谈用户体验。疯传的背后有产业真实的发展与前进,也有互联网时代典型的一哄而上。这一年我学到的:

阅读更多