关闭

最小接口

原文:MinimalInterface    设计            Bliki 索引所谓最小接口,其设计风格与人本接口形成鲜明对照,它背后的主旨是设计一套API不仅能满足用户完成所有操作的需求,还要把这种能力积聚到一个最精简的方法集合上。(两者的区别请参考人本接口里的例子。)拿人本接口里的例子“Ruby-Array VS Java-List”来说,既然List已经有了取索引位置处元素...
阅读(16802) 评论(10)

人本接口

原文:HumaneInterface    设计        2005年12月5日            Bliki 索引(更新频繁,见文尾增添的链接。)在Ruby用户群中混迹了一段时日,我经常见到“人本接口”这个术语。“人本接口”体现了Ruby大虾们设计class接口时的态度,此外,我觉得它还与另一个学派(最小接口)在设计API的思路上形成了有趣的对照。人本接口的本质思想是找出人们想要...
阅读(14609) 评论(6)

RubyPloticus

原文:RubyPloticus    ruby        2006年6月19日            Bliki 索引译注:代码和生成的图片示例可从这里下载。在最近的帖子“评估Ruby”中,我提到一位同事曾在一个Web应用中加入了一些漂亮的数据图表,有人email问我是怎样实现的,我在原来那篇帖子上添了句简短的回答:用Ploticus。这就带来另一个问题——他是怎样把Ruby和Plot...
阅读(9912) 评论(2)

让版本管理遍地开花

原文:PervasiveVersioning    工具        2006年8月21日            Bliki 索引最近Apple发布了Time Machine,能让时光倒流来查看你的文件的所有修改,包括找回已删除的文件。对我们这些狂热的极客(geek)来说,这并不是什么新玩意。和别人一样,我把整个工作目录都放到版本工具的管理下,开始用的是CVS,现在用Subversion...
阅读(13190) 评论(1)

多台桌面电脑

原文:MultipleDesktops    写作            Bliki 索引一两年前,我工作生涯的一个重要方面发生了变化,那之前我一直只在一台电脑上工作(更确切地说是只用一块硬盘),所有工作文件都保存在我的笔记本硬盘里。如果我要用另外一台桌面电脑,就通过文件共享操纵那些文件。自从去年我买了PowerBook事情就变了,现在我经常转战于三台机器:Mac PowerBook、Wi...
阅读(13544) 评论(1)

更广泛的版本管理

原文:MoreVersionControl    写作        2004年12月6日            Bliki 索引译注:“Version Control”一般称为“版本控制”或“版本管理”,这里统一称“版本管理”。作为版本管理工具的重度用户,我觉得它们在计算机中可以用得更广泛。目前的计算机用户中,除了软件开发者别人很少会用版本管理,但做软件的都知道它对协同工作的意义实在太重...
阅读(11431) 评论(1)

语义diff

原文:SemanticDiff        设计            Bliki 索引多数版本管理系统的实现仰仗着能比较出文件不同版本的变化,通常称作diff,源自Unix比较版本变化的命令。针对文本和二进制文件都有优秀的diff (以及merge)算法了,但这些diff工具的弊病是它们都非常愚钝,只会傻乎乎地对比两个版本,简单地告诉你怎么从一个版本变成另一个。如果diff有了语义,它...
阅读(7856) 评论(1)

即席演讲

原文:ExtemporarySpeaking    写作        2006年8月18日            Bliki 索引不久前Jon Udell把公开演讲根据其特点划分为两类: 按稿讲:先把要讲的几乎一字不漏地写出来,之后或者照着念或者把写出的东西背过。 按幻灯片讲:先做出详尽的幻灯片,跟着幻灯片讲。我多数的公开演讲是另外一类——即席演讲...
阅读(8840) 评论(1)

翻译

原文:Translations    写作        2006年8月1日            Bliki 索引不仅有人愿意把自己宝贵的工作时间浪费在阅读这个博客上,而且还有人愿意翻译它。我很欢迎一份中文翻译版加入,现在正在由马皓明做这件事。我被告知自己拥有广大的中国读者,我很欢迎他们来这里看我这些不甚成熟的想法。在页面边侧,可以找到多种语言翻译版本的永久链接。译者的话借这篇帖子说一下...
阅读(8485) 评论(8)

评估Ruby

原文:EvaluatingRuby    ruby        2006年5月10日            Bliki 索引既然你读到这篇文字,我猜你已经知道人们对Ruby这门编程语言吵得不可开交了,尤其是对Rails这个Web应用开发框架更是吵得一塌糊涂。有人说它是编程的未来,前途光明;有人说它是旁门左道,危险暗淡。我是在几年前开始用Ruby的,当时用本主义引起了我的兴趣,Ruby很快...
阅读(15934) 评论(19)

以例为规

原文:SpecificationByExample(译注1)    敏捷        2006年6月16日            Bliki 索引译注1:以例为规,“例”即测试涉及到的例子,这里主要是指验收测试(Acceptance Testing);“规”即软件规格说明书,以下简称“规格”;“以例为规”即以测试涵盖的例子作为规格,后文也作“范例规格”。Cedric Beust最近的一篇...
阅读(8399) 评论(4)

连贯接口

原文:FluentInterface    设计        2005年12月20日            Bliki 索引译注:可结合“领域专用语言(DSL)”和“界定DSL”读本文。更新:Piers Cawley做了精彩的后续讨论。几个月前,我和Eric Evans参加了一个研讨会,他发言的主题是一种特殊风格的接口,我们决定把它命名为“连贯接口”。连贯接口的风格并不常见,但我们觉得应...
阅读(10834) 评论(4)

Command与Query分离

原文:CommandQuerySeparation    设计            Bliki 索引“Command与Query分离”这条术语首现于Bertrand Meyer的著作《面向对象软件构造(Object Oriented Software Construction)》,这本书是OO思想普及发展初期几本影响力最大的OO著作之一(说的是这本书的第一版,第二版也很好,不过你得先炼几...
阅读(12308) 评论(2)

懒初始化 与 可见状态

懒初始化原文:LazyInitialization    设计            Bliki 索引一个变量(在OO语境中常为class的一个字段)第一次存取时才被初始化,这项技术叫做懒初始化,其常规形式如下(C#):public FooClass Foo {  get {    if (_foo = null) _foo = calculateFoo();    return _foo...
阅读(8508) 评论(1)

Evans氏分类法

原文:EvansClassification    设计            Bliki 索引下边是Eric Evans在他的杰作《领域驱动设计(Domain Driven Design)》中开创的一套针对Domain Objects的分类法,在你的工作中很可能会遇到这些不同分类的Domain Objects。     Entity: 在不同时刻不同表现形式下具有唯一身份标...
阅读(13904) 评论(1)

界定DSL

原文:DslBoundary    设计        2006年8月1日                Bliki 索引当说起"领域专用语言(Domain Specific Language / DSL)"这个话题时,一个常见的难题是"到底什么是DSL什么不是DSL",难就难在根本没有一个精确的定义,是与不是之间存在很大的灰色地带。在我看来,界定一种语言是不是DSL关键是看它在范围和能力这两方面...
阅读(9738) 评论(1)

领域专用语言(DSL)

原文:DomainSpecificLanguage    设计        2004年2月13日            Bliki 索引所谓领域专用语言(domain specific language / DSL),其基本思想是“求专不求全”,不像通用目的语言那样目标范围涵盖一切软件问题,而是专门针对某一特定问题的计算机语言。几乎自计算机发明伊始,人们就开始谈论DSL使用DSL了。Un...
阅读(44755) 评论(2)

企业级Rails

原文:EnterpriseRails    Ruby        2006年7月11日            Bliki 索引摘要:“企业级Rails”这种说法大可视作自相矛盾,但说成“企业级Ruby”就是两回事了。核心Rails窄小集中,而Ruby世界(包括 Rails)宽广发散——持这种观点可以做到不偏废,其精髓就是小巧工具结合起来威力无穷。Rails已明确了自己的取向,留下的缺口将...
阅读(22784) 评论(8)

后现代主义编程

原文:PostModernProgramming    设计            Bliki 索引一种由James Noble和Robert Biddle两人提出的编程思想。其精髓如下(仅代表个人观点):长久以来,软件开发的现代派观点认为,优秀的软件系统以统一而简单的方式由统一的组件构成(Smalltalk和Lisp就是这种思想的好例子);而后现代主义观认为,软件是由各种各样风格迥异的东...
阅读(7981) 评论(2)

应用式数据库 VS 集成式数据库

应用式数据库原文:ApplicationDatabase    设计                Bliki 索引 我用“应用式数据库”这个术语来描述一个由单一应用系统控制和访问的数据库,与之对应的概念是“集成式数据库”。因为只有一个应用访问这个数据库,所以可以量体裁衣,数据库设计越能方便地满足应用的需求也就越“合身”,这使得表结构非常具体化,通常比集成式数据库的设计更简单,更容易理解。为了与其...
阅读(9005) 评论(2)
41条 共3页1 2 3 下一页 尾页
    个人资料
    • 访问:367181次
    • 积分:3929
    • 等级:
    • 排名:第8337名
    • 原创:10篇
    • 转载:0篇
    • 译文:31篇
    • 评论:132条
    文章分类
    最新评论