期间:2006

角色界面

通过查看供应商和消费者之间的特定交互来定义角色接口。供应商组件通常会实现多个角色接口,每个角色接口对应于这些交互模式。这与HeaderInterface,供应商将只有一个接口。

由马丁

2006年12月22日

阅读更多…

bliki

API设计

JRake

现在,JRuby越来越成熟,一些人正在考虑最终做一些事情来改进构建脚本的世界,用

由马丁

2006年12月18日

阅读更多…

bliki

工具

大屏幕

如何提高软件开发人员的生产力?

由马丁

2006年12月16日

阅读更多…

bliki

团队环境中生产力工具

Web2.0

在过去的几年里,有很多关于Web 2.0的讨论,包括它的概念和它的价值新词的使用.我在这方面的参与是有限的,我读过和听过蒂姆·奥莱利关于这个话题的文章,还参加过他组织的研讨会。然而,有很多困惑,所以我想是时候做一个徒劳的尝试来减少这种困惑了。(因为大部分是我在解释蒂姆,所以如果我们有什么意见相左,你应该相信他。)

由马丁

2006年12月14日

阅读更多…

bliki

web开发

语义扩散

我有创造的习惯新词的使用这是我在软件开发中看到的东西。华体会登录网址这在这个领域的作者中是一个常见的习惯,因为软件开发仍然缺乏很多有用的术语。华体会登录网址建立行话的一个问题是,在语义扩散的过程中,术语很容易失去它们的意义——在我们的行话中使用另一个潜在的附加元素。

由马丁

2006年12月14日

阅读更多…

bliki

采用敏捷字典不好的事情写作

新词的使用

新词:

1:新词、新用法或新表达。
2:一个精神病患者创造的毫无意义的词。

--梅里亚姆-韦伯斯特

如果你读了我的很多文章,你会很快注意到我是一个强迫性的新词创造者。我总是在寻找新的单词和短语,事实上这个bliki就是围绕这个习惯设计的。

由马丁

2006年11月2

阅读更多…

bliki

写作

功能奉献

敏捷方法的一个常见的,也许是占主导地位的实践是为正在构建的软件开发一系列特性(通常称为故事)。这些特性可以通过索引卡、工作队列、燃尽表、积压表或任何您所选择的工具来跟踪。

结对编程的误解

一堆常见的误解结对编程

无处不在的语言

通用语言是埃里克·埃文斯在领域驱动设计用于在开发人员和用户之间建立一种通用的、严格的语言的实践。这种语言应该基于域模型在软件中使用——因此它需要是严格的,因为软件不能很好地处理模糊性。

由马丁

2006年10月31日

阅读更多…

bliki

领域驱动设计

Ruby注释

Ruby最受欢迎的特性之一是它对元编程这是一种像改变语言本身一样的特性,比如引入新的关键词。

由马丁

2006年10月26日

阅读更多…

bliki

语言功能领域特定语言ruby

内部Dsl的风格

内部DSL(通常称为嵌入式DSL)是一个DomainSpecificLanguage它是用现有的宿主语言编写的。这是许多编程语言社区(特别是Lisp社区)的一种常见思维方式。它现在获得了很多关注,因为在快速发展的Ruby社区中,dsl是一种常见的思维方式。

由马丁

2006年10月24日

阅读更多…

bliki

领域特定语言

对象的母亲

对象母类是一种在测试中用于帮助创建用于测试的示例对象的类。

由马丁

2006年10月24日

阅读更多…

bliki

测试

改进的峡谷

如果你在乎你所做的事,你在乎的是如何做得更好。这包括反思你是如何做事的,并尝试新的技术,看看它们是否能让你变得更好。即使别人推荐新的技巧,你知道它们是否对你有效的唯一方法就是自己去尝试,看看它们是否能提高你的表现。

由马丁

2006年10月18日

阅读更多…

bliki

采用敏捷

设计的继承

在面向对象的圈子里,持续时间最长的争论之一是OpenInheritance和设计的继承。设计继承的原则可能是最好的总结乔什•布洛赫:“为继承设计和文件,否则禁止它”。使用这种方法,您需要小心地决定哪些方法可以继承和密封其他的是为了防止它们被覆盖。

由马丁

2006年10月6日

阅读更多…

bliki

封装API设计

敏捷实施

根据敏捷联盟的现任董事会,敏捷方法已经“跨越鸿沟”我认为这意味着它们正变得越来越普遍。虽然这有它的优点,但它也带来了问题。当一种方法或设计方法变得流行时,我们看到很多人在使用或教授它,他们关注的是时尚而不是真正的细节。这可能会导致以敏捷的名义所做的事情与运动创始人的原则截然相反。

由马丁

2006年10月2

阅读更多…

bliki

敏捷采用敏捷

投票机

我以前说过(在本页的早期版本中)我无法理解一个没有清晰可审核的书面记录的投票机怎么会被认为可以进行投票。对这一观点的进一步支持是最近的研究这表明颠覆普通投票机是多么容易。(通过Glenn Vanderburg

由马丁

2006年9月19日

阅读更多…

bliki

工具

普遍的版本控制

最近,苹果公司宣布时间机器这是一种能够回到过去,查看文件的所有更改,包括查找被删除的文件的功能。对于我们这些狂热的极客来说,这并不是什么新功能。和其他人一样,我将整个工作目录置于版本控制之下,最初是CVS颠覆这样,我就有能力轻松查看我所从事的所有工作的所有更改。这是一个非常有用的功能,我以前就想过如果拥有它会是什么样子MoreVersionControl,也许《时间机器》就是朝这个方向迈出的一步。

由马丁

2006年8月21日

阅读更多…

bliki

版本控制

无准备的演讲

不久前Jon Udell描述了两种公开演讲模式:

  • 照本宣章:你把你要说的话几乎完全写出来,然后阅读或背诵。
  • 幻灯片驱动:你制作详细的幻灯片,并用它们来驱动你所说的内容。

这些天我的大多数公开演讲都使用第三种模式——即席演讲。在这种风格中,我一开始只对我的演讲做一个大致的提纲,然后再把其余的内容写好。

由马丁

2006年8月18日

阅读更多…

bliki

演讲技巧

编写软件模式

我花了很多精力在写作模式上。不时有人问我为什么这样做,什么是好的模式。这是一篇简短的文章,介绍了我如何看待模式,以及我对那些自己对编写模式感兴趣的人的建议。

由马丁

2006年8月1

阅读更多…

文章

写作

Dsl边界

当话题DomainSpecificLanguage最常见的问题之一就是到底什么是DSL,什么不是DSL。问题是DSL没有精确的定义,而且DSL和其他东西之间有很大的灰色地带。

由马丁

2006年8月1

阅读更多…

bliki

领域特定语言

客户亲和力

当人们审视顶级企业软件开发人员的构成时,谈话往往会转向框架和语言的知识,或者可能是理解复杂算法和数据结构的能力。对我来说,程序员或开发团队最重要的特征之一是我称之为“客户亲和力”的东西。这是开发人员对软件所解决的业务问题以及生活在商业世界中的人们的兴趣和密切程度。

由马丁

2006年7月28日

阅读更多…

bliki

敏捷团队组织需求分析

GUI架华体会体育网页版入口构

对GUI架构如何发展的历史概述,特别关注模型-视图-控制器在过去几年里是如何被不同的团体所看待的。从历史的角度来看,与我的演讲模式有关。

使用离岸开发的敏捷软件过程

在过去的四年里,Thoughtworks在印度班加罗尔运营了一个实验室,以支持我们在北美和欧洲的软件开发项目。华体会登录网址传统的离岸开发方法是基于计划驱动的方法,但我们非常坚定地站在敏捷阵营。在这里,我将讨论我们在进行离岸敏捷开发中获得的经验和教训。到目前为止,我们已经发现我们可以做到这一点,尽管其好处仍有待商榷。(虽然这篇文章上次更新是在2006年,但我在2011年访问了我们的海上工作,发现经验教训仍然相关,因此这篇文章不需要进一步的重大修改。)

由马丁

2006年7月18日

阅读更多…

文章

敏捷

组织表示逻辑

用户界面模式的叙述概述。讨论如何以及为什么将域逻辑与表示分离,以及如何分离和同步数据层。

企业铁路

在新成立的Rails社区中,“企业”这个词正在成为一个肮脏的词。对于许多人来说,Rails框架具有激进的简单性,是过度复杂的对立面“企业级”框架。

由马丁

2006年7月11日

阅读更多…

bliki

ruby

撰写敏捷宣言

2001年2月,17位软件专家在Snowbird UT聚会,讨论过去被称为轻量级方法的不断发展的领域。我们决定用敏捷这个术语来描述这种新的敏捷方法.我们还写了敏捷软件开发宣言华体会登录网址,阐述这些敏捷过程的价值和原则。我是这些自封为梦想家的人之一,从那以后,我遇到了许多关于这个团体的起源和敏捷联盟随后的成立的问题。这是我对那些事件的回忆。

由马丁

2006年7月9日

阅读更多…

文章

敏捷计算机历史

Buildix

我已经说过很多次了持续集成.要使这样的环境工作,您需要一个持续集成服务器和一个源代码控制系统。为了使项目顺利运行,您还可以使用问题跟踪器来跟踪bug之类的东西,还可以使用wiki来帮助捕获各种项目知识。

由马丁

2006年7月7

阅读更多…

bliki

持续交付工具

RailsConf 2006的主题

和我的大多数主题一样,这是一个无准备的演讲.这次会议的主题是rails如何影响软件开发。华体会登录网址

由马丁

2006年7月

更多…

视频

演讲视频ruby

维基百科的死亡

尼古拉斯·卡尔最近在博客圈发表的一篇文章引发了一场争议。维基百科的死亡(是的,我知道我的反应很慢,但我在路上没有时间写)。他最初的帖子让我觉得很奇怪,他说维基百科正在消亡,因为0.01%的文章受到了相当温和的保护。这就像当一个小镇雇佣了一名警察时,就说民主已经结束了。

由马丁

2006年6月19日

阅读更多…

bliki

网络文化

Ruby Ploticus

在我最近的一篇文章中EvaluatingRuby我提到一个同事用一些花哨的数字图表制作了一个网页应用程序。有人发邮件问他是怎么做到的。我在最初的bliki条目中添加了简短的答案,ploticus,但这导致了一个问题:他是如何将ruby与ploticus结合在一起的?

由马丁

2006年6月19日

阅读更多…

bliki

ruby

消费者驱动契约:一种服务演化模式

本文讨论了在演化服务提供者和使用者社区时所面临的一些挑战。它描述了服务提供者更改部分契约(特别是文档模式)时产生的一些耦合问题,并确定了两种很好理解的策略——添加模式扩展点和对接收到的消息执行“刚刚好”的验证——以缓解这类问题。这两种策略都有助于保护消费者不受提供者契约变更的影响,但它们都没有让提供者了解使用它的方式以及它在发展过程中必须维护的义务。利用这些缓解策略中的一种基于断言的语言——“刚刚好”验证策略——然后,本文描述了“消费者驱动契约”模式,该模式使提供者深入了解其消费者义务,并将重点放在围绕消费者所需的关键业务功能的交付的服务演进上。

伊恩•罗宾逊

2006年6月12日

阅读更多…

文章

应用程序集成web服务

热棒

今年年初我经常旅行,所以我的写作戛然而止。几周前我回到家,希望能写很多东西。我做过一些,但总是有事情让我远离:摘除事故中别针的手术,被淹没了.但最大的生产率杀手是自己造成的——买一台新电脑。

由马丁

2006年5月22日

阅读更多…

bliki

工具

手风琴

在过去的几年里我们最喜欢的玩具之一是手风琴.这是一个非常简单的设备——大约一个路由器的大小,有用于电源、以太网、放大器和无线局域网的天线端口。它的工作是从服务器获取mp3文件流,并通过放大器播放它们。

由马丁

2006年5月21日

阅读更多…

bliki

小工具

转向代码所有权

在我最近的CodeOwnership在这篇文章中,我描述了我思考代码所有权问题的方式。我的许多软件开发朋友都华体会登录网址是极端的程序员,倾向于集体代码所有权。然而,这些做法并不是绝对的,应该根据当地的考虑加以调整。我的一个同事给我发送了一个带有以下故事的注释,我认为它很好地说明了什么时候您必须改变您的实践,即使您是XP的狂热爱好者。(在谈论自己的团队时,他更喜欢匿名。)

由马丁

2006年5月15

阅读更多…

bliki

采用敏捷团队组织

淹没了

关注新闻的人可能已经注意到,新英格兰地区遭遇了一场春季大风暴,引发了大量洪水。我住在梅尔罗斯,那里正处于雨中,我们这个周末下了近10英寸的雨。人们说,自从1938年的飓风以来,再也没有像这样的飓风了,尽管与世界上其他一些地方在过去几年遭受的灾害相比,这只是一件小事。

由马丁

2006年5月15

阅读更多…

bliki

国内

代码所有权

我遇到过各种各样的代码所有权方案。我把它们分为三大类:

由马丁

2006年5月12日

阅读更多…

bliki

团队组织极限编程过程理论

评估红宝石

如果你正在阅读这篇文章,我想你已经意识到一个事实:关于Ruby编程语言,特别是用于开发web应用程序的Rails框架,已经有了大量的关注。有人认为这是编程的未来,也有人认为这是一种危险的转移。

由马丁

2006年5月10日

阅读更多…

bliki

ruby

持续集成

持续集成是一种软件开发实践,其中团队成员经常集成他们的工华体会登录网址作,通常每个人至少每天集成—导致每天进行多次集成。每个集成都通过自动构建(包括测试)进行验证,以尽可能快地检测集成错误。许多团队发现这种方法大大减少了集成问题,并允许团队更快地开发内聚软件。本文是持续集成的快速概述,总结了该技术及其当前的使用。

Thoughtworks英国

在过去一个月左右的时间里,我一直在我们的英国办公室里闲逛,与各种各样的英国思想工作者交流。我本来打算去拜访一些客户的项目,但仅仅是和办公室里和周围的人聊聊就已经让我非常忙了(这也抹去了所有写书的进度,但那可以等我回家后再说)。

由马丁

2006年2月27日

阅读更多…

bliki

thoughtworks

Getter去污剂

当他们看到一个getter方法时,你可以从他们的左手嘴角的抽搐中看出这一点,他们会迅速地拉他们的战斧,并在另一个getter被无情地从一个类中挖出来时发出满意的叫声,而这个类会立即在充满感激的getter Eradicator的脚前狂喜。

由马丁

2006年2月22日

阅读更多…

bliki

封装API设计合作对象设计

代码味道

代码气味是一种表面的指示,通常对应于系统中更深层次的问题。这个词是肯特·贝克在帮我做我的华体会app下载二维码书。

构造函数初始化

构造函数初始化是在对象的创建方法中传入对象所需的所有协作者的一种方法。这是一种替代方案SetterInitialization

由马丁

2006年2月7日

阅读更多…

bliki

API设计

基座恐惧症

作为一名作家,我的成功带来的副作用之一是,我成了一个小极客名人。它非常小,通常只在极客会议上起作用(尽管在旧金山的一家餐馆里有几次有人向我走来)。在这件事发生之前,我真的没有想太多,除了对名声的轻微渴望。现在事情发生了,我更清楚了——总之,我讨厌它。

由马丁

2006年2月7日

阅读更多…

bliki

写作演讲技巧

关注事件

将企业应用程序视为对外部事件做出反应的系统,这是一种最长的运行方式。这是一种思维方式,在80年代后半叶的结构化设计社区中形成。你现在听说它是在“事件驱动架构”的旗帜下。华体会体育网页版入口在2000年代中期,我开始为这类系统收集一些模式,但从那以后就没能把它们变成更实质性的东西。尽管它们粗糙且现成,但我确实认为它们提供了一些关于事件协作本质的有用想法,介绍了术语“事件来源”,使用并行模型表示世界的假设状态,以及如何使用协议分派器组织域逻辑。

关注事件

一种模式叙述,它研究如何将事件用作系统如何操作和与对等体协作的焦点。概述如何表示事件、如何使用事件在系统之间集成以及如何在系统体系结构中使用事件源。华体会体育网页版入口

会计模式

对会计有用的模式叙述。包含帐户、分录和交易的基本表示,以及进行会计调整的模式概述。

2006年1月24日

阅读更多…

分析模式

Xunit

XUnit是一组在软件开发人员中广为人知的测试框架的家族名称。这个名字是由JUnit,这是第一个广为人知的。

由马丁

2006年1月17日

阅读更多…

bliki

测试

测试双

杰拉德Meszaros是正在写一本书捕获模式,以使用各种Xunit框架。他遇到的一件尴尬的事情是存根(stub)、模拟(mock)、赝品(fake)、假人(dummies)和其他人们用来删除系统部分进行测试的东西的各种名称。为了解决这个问题,他想出了自己的词汇,我认为值得进一步传播。

由马丁

2006年1月17日

阅读更多…

bliki

测试

可以观察到的状态

当人们说一个方法不改变对象的可观察状态时,这是什么意思?

由马丁

2006年1月5

阅读更多…

bliki

封装

测试不变

契约式设计(DbC)和测试驱动开发(TDD)的提倡者之间一直存在着一种长期的、低调的争论。我现在不打算深入讨论这个问题,但我会提出一个想法,把这两者结合起来,这是我在和他们交谈时想到的丹尼尔·杰克逊

由马丁

2006年1月5

阅读更多…

bliki

测试

隐式接口实现

Java和c#共享相同的纯接口类型模型。声明一个纯接口的方法是接口可邮寄的,然后就可以用它来声明实现类Customer实现Mailable(在Java)。一个类可以实现任意数量的纯接口。这个模型忽略的一件事是隐式的接口,只要您有一个类。

由马丁

2006年1月4

阅读更多…

bliki

API设计


所有标签

API设计·敏捷·采用敏捷·分析模式·应用程序体系结构华体会体育网页版入口·应用程序集成·不好的事情·棋盘游戏·构建脚本·认证·协作·计算机历史·小组会议·会议·持续交付·新型冠状病毒肺炎·数据分析·数据库·设计·字典·分布式计算杂志·娱乐·多样性·文档·领域驱动设计·领域特定语言·国内·封装·企业架构华体会体育网页版入口·估计·事件的架构华体会体育网页版入口·进化型设计·经验报告·旁白的架构华体会体育网页版入口·极限编程·前端·小工具·ieeeSoftware·infodecks·网络文化·面试·语言功能·语言工作台·精益·传统康复·法律·指标·microservices·移动·noSQL·合作对象设计·解析器生成器·摄影·平台·播客·受欢迎的·演讲技巧·隐私·过程理论·生产力·编程环境·编程风格·项目计划·招聘·华体会app下载二维码·华体会app下载二维码重构的边界·需求分析·ruby·安全·演讲视频·团队环境中·团队组织·技术债务·技术领导·测试类别·测试·thoughtworks·工具·旅行·uml·版本控制·web开发·web服务·网站·写作

2022·2021·2020·2019·2018·2017·2016·2015·2014·2013·2012·2011·2010·2009·2008·2007·2006·2005·2004·2003·2002·2001·2000·1999·1998·1997·1996

所有的内容

Baidu
map