写点什么

第五届敏捷中国大会现场采访敏捷宣言创始人:Martin Fowler 和 James Grenning

  • 2010-10-14
  • 本文字数:1633 字

    阅读完需:约 5 分钟

由 ThoughtWorks 主办、InfoQ 全程提供票务支持的第五届敏捷中国大会昨日在北京成功举办,两位敏捷宣言的创始人 Martin Fowler 和 James Grenning 受邀分别作了题为“ 21 世纪的软件设计”和“测试不再是发现Bug ”的主题演讲,并接受媒体访问。InfoQ 编辑在大会现场就REST、敏捷、嵌入式开发等相关话题和两位大师进行了简短的交流。

受访者简介: Martin Fowler,著名作家,软件开发咨询师及演讲家,ThoughtWorks 首席科学家。他以其超过 20 年的专业经验帮助企业核心系统应用面向对象技术 。

InfoQ:作为技术领域的权威,很多人认为您代表着技术的潮流或者发展方向,请问您最近在关注什么技术?

Martin Fowler(以下简称 Martin):在过去的几年,包括现在,我一直在关注 DSL(领域特定语言),我的新书《Domain Specific Languages》也主要关注的这个方面。对于我来说,我喜欢在某一个时间段只关注一个领域。在未来一段时间,持续交付是我很想去关注的,想多花一些时间。

InfoQ:最近您为 Jim Webber 等人撰写的《REST in Practice》写了一个序言,里面提到对REST 要谨慎地使用,您认为REST 技术的应用前景如何?

Martin:对于我个人来讲我非常不愿意预测未来,但是我仍然认为 REST 是个非常好的技术,可以用来在互联网上做集成,做可扩展性的集成等。另外我也有一些同事,他们对 REST 这个领域非常专注,并曾经成功地应用 REST 做过很多的项目,这些都可以证明 REST 在可扩展集成领域有比较好的基础。

InfoQ:以您的观点,您如何定义一个成熟的敏捷开发团队?

Martin:我想最重要的度量标准就是这个团队能够快速地、及时地、经常地发布软件,而且能够比较高质量地发布软件,开发人员能够把代码安全地放在系统中,而不出现问题。这些都是一个高质量的敏捷团队所应该具备的素养。

受访者简介:James Grenning, Renaissance Software Consulting 公司创始人,全球知名讲师,过程教练及咨询师。他拥有超过 30 年的软件开发行业经验,擅长技术指导与管理。他专注于嵌入式软件研发,也是将敏捷实践带入 IT 世界的重要先驱力量,是敏捷宣言创始人之一。

InfoQ:在嵌入式开发领域,敏捷的实施现状如何?另外在这个领域的敏捷实施过程中,最大的难点是什么?

James Grenning(以下简称 James):在传统的开发过程中,团队可能会认为一开始就进行设计、定义,然后再编程才是正常的途径,等到以后出现问题时,再回过头来找解决方案。其实嵌入式开发团队通常也是这样,这也是他们在实施敏捷的过程中必须要注意的。在嵌入式开发领域最大的一个秘密就是嵌入式开发和其他的开发没有什么本质上的区别,实际上当我们觉得它很特殊的原因,是因为它有一些复杂的依赖,比如对硬件设备的依赖。但是,事实上,在其他的软件开发领域也有类似的依赖。

InfoQ:在嵌入式开发中常用的语言是 C 和 C++,而 C 还不是面向对象语言,很多人认为用 C 很难写出干净的代码。请问您如何看待这个说法?另外在用 C 做嵌入式开发的时候,您认为有些有价值的原则值得遵循?

James:用 C++ 可以写出很好的面向对象的程序。对于 C 语言来说,它是很灵活的。根据过去两年的实践证明,基于 C 语言也能够写出具有紧密的、封闭性的模块。特别是 CPT(一种 C 语言编程软件)可以帮助开发人员做出更好的设计,写出有更好封装性的模块或者代码。不像以前写 C 语言的时候,人们倾向于写的非常长,通过 CPT 大家都会自觉不自觉地将程序写得更小,更有封装性。

对于用于嵌入式的 C 语言开发来讲,它使用的原则其实和其他的面向对象编程的原则一样。都应该遵循面向对象开发的那些原则,特别是像封装性、高内聚等。比如我们要测试一辆汽车,要对其引擎做具体的测试,这是比较困难的,因为通常来说引擎装在汽车里才能完全展示驱动汽车的性能。但是如果我们能够将引擎拆下来,对它进行单独测试,也许会更加有效。对于 C 语言开发也是这样,如果所编写的代码都是相互关联、耦合的,那么就无法进行有效的验证。所以说,C 语言的编程也应该遵循面向对象开发的原则:高内聚、低耦合!

2010-10-14 23:111862

评论

发布
暂无评论
发现更多内容

Dubbo 延迟服务暴露

青年IT男

dubbo

架构实战营模块4作业-千万级学生管理系统的考试试卷存储方案

好吃不贵

架构实战营

云小课 | 大数据融合分析:GaussDW(DWS)轻松导入MRS-Hive数据源

华为云开发者联盟

华为云 GaussDB(DWS) MRS数据源 融合分析 数据仓库服务

还不会使用分布式锁?教你三种分布式锁实现的方式

华为云开发者联盟

数据库 zookeeper 分布式锁 etcd 数据库表

关于打的 umd 包在使用时,报 require is not defined 错误的问题出处

blueju

Netty常用解码器学习笔记

风翱

Netty 5月日更

千万级学生管理系统考试试卷存储方案设计

eoeoeo

搞服务器开发竟不知道宝塔为何物,有点说不过去呀!

liuzhen007

5月日更

从0到1数字化转型的“精益落地”模式

高瑞

完蛋,好像病了

IT蜗壳-Tango

5月日更

爱奇艺世界大会|刘文峰:科技创新如何为用户和艺术家服务?

爱奇艺技术产品团队

高性能 JavaScriptの笔记(三)

空城机

JavaScript 大前端 5月日更

Golang Array and Slice

escray

学习 极客时间 Go 语言 5月日更

Kafka万亿级消息实战

vivo互联网技术

kafka 集群

爱奇艺世界大会|开幕式速览:智能制作助推影视工业化,匠心构筑行业健康生态

爱奇艺技术产品团队

超时与线程池的坑

ES_her0

5月日更

长连接网关技术专题(四):爱奇艺WebSocket实时推送网关技术实践

JackJiang

Netty websocket 即时通讯 IM 网关

多吃点花生米吧!

Nydia

学习

快乐是一种选择

BY林子

快乐

产品数据分析

lenka

5月日更

这一年,我们都需要他安静而勇敢的陪伴

小天同学

读书笔记 读书 5月日更

【LeetCode】形成两个异或相等数组的三元组数目Java题解

Albert

算法 LeetCode 5月日更

4年Java开发经验,经常被问到高并发、性能调优方面的问题,该怎么办?

Java架构师迁哥

2021金三银四面试经历:阿里七面(已拿offer),面试经历+真题分享

Java 编程 程序员 架构 面试

五岳核心版上线!这份阿里开发手册核心版又将被多少人疯狂转载?

Java 编程 程序员 架构 面试

如何给产品定价

石云升

创业 产品 职场经验 5月日更

架构实战营模块四作业

竹林七贤

为什么TCP 建连接要3次,断连接却要4次呢?

架构精进之路

TCP 网络层 5月日更

数据挖掘从入门到放弃(四):手撕(绘)关联规则挖掘算法

数据社

机器学习 5月日更

终于来了!这份阿里P9纯手写的Java并发核心手册,把我没学会的高扩展、高性能、高可用全部讲清楚了

Java 程序员 架构 面试

MySQL慢日志全解析

Simon

MySQL 慢查询

第五届敏捷中国大会现场采访敏捷宣言创始人:Martin Fowler和James Grenning_SOA_霍太稳@极客邦科技_InfoQ精选文章