软件设计
云淡风清-北京
在战争中学习如何战斗。GitHub:https://github.com/luqin
展开
-
经典论文翻译导读之《Google File System》
英文原文:The Google File System 【译者预读】 GFS这三个字母无需过多修饰,《Google File System》的论文也早有译版。但是这不妨碍我们加点批注、重温经典,并结合上篇Haystack的文章,将GFS、TFS、Haystack进行一次全方位的对比,一窥各巨头的架构师们是如何权衡利弊、各取所需。 1. 介绍 我们设计和实现了GFS来满足Go转载 2013-05-28 11:35:08 · 1353 阅读 · 0 评论 -
API设计新思维:用流畅接口构造内部DSL
程序设计语言的抽象机制包含了两个最基本的方面:一是语言关注的基本元素/语义;另一个是从基本元素/语义到复合元素/语义的构造规则。在C、C++、Java、C#、Python等通用语言中,语言的基本元素/语义往往离问题域较远,通过API库的形式进行层层抽象是降低问题难度最常用的方法。比如,在C语言中最常见的方式是提供函数库来封装复杂逻辑,方便外部调用。 不过普通的API设计方法存在一种天然的陷阱转载 2013-05-28 11:50:45 · 866 阅读 · 0 评论 -
那些触动人心的产品细节
马斯洛需求层次理论告诉我们,当人穷困的时候,首要解决的是温饱问题。解决了温饱问题之后,接下来需要获得的是精神上的满足。产品也是一样,给用户解决问题是温饱问题,打动用户,在情感上获得用户的共鸣则是精神上的满足。不过,功能上的满足和情感上的满足两者未必是先后关系。 越来越多的互联网产品,给用户提供了不少很好的功能,满足了用户的需要。在这个信仰缺失的年代,人们有更多情感上和精神上的需要。不少优秀的转载 2013-05-28 11:28:42 · 1633 阅读 · 0 评论 -
好菜都得花功夫做
平常下班时间太紧张,炒菜从洗菜到上桌也就十几分钟,味道自然就一般般了。到了周末,终于能花点时间做“大餐”了。这“大餐”之所以好吃,我觉得主要原因是食材入味深,火候匀,有时还需要经过多种烹调方法。例如这红烧猪蹄,就先得把猪蹄剁块儿;锅内烧好了开水,把猪蹄放进去焯。焯过的猪蹄要及时放在凉水中泡十分钟,这样做出来的猪蹄虽然软但又有“筋道”的口感。然后炒锅里放一点点油,将冰糖熬化,放入猪蹄上色。将上色的猪转载 2013-05-28 11:36:09 · 876 阅读 · 0 评论 -
你好,对话框
“怎么了?”除非你对某类对话框已司空见惯,否则遇到,第一反应往往是这样的?这种体验就像你明明急着去赶车,途中却不断被拦住塞传单一样。不能否认,它是一种打断,有时甚至会成为打扰。做为设计师,虽知“打断”暂不能杜绝,但不使之变为“打扰”,却是我们该努力做到的: ① 多次打断=打扰 隔一个小时打断你一下,你或者还可以忍受。若是1分钟内好几次打断你,想起来就抓狂吧?这也是Chrome为什么在判转载 2013-05-28 11:43:08 · 893 阅读 · 1 评论