`
SunMicro
  • 浏览: 20988 次
社区版块
存档分类
最新评论
阅读更多
What is Extreme Programming?--Ron Jeffries
what is Extreme Programming

simple design:什么是简单的设计,简单的说就是可以很容易使你团队成员理解并认同的设计,过犹不及

不少人总是喜欢炫耀自己所掌握的设计模式和最新的设计技巧,而全然不考虑是否

合适。简单的设计包含两个部分,其核心就我所理解既是把握现在而非充满变数的未来,第一部分:为已经

定义的功能进行设计,或说是和客户协商好了的需要实现得功能,不要将自己一些自以为是的GOOD IDEA强加

于设计。第二部分:创建最佳的可实现功能得设计,不管未来怎样,我们只将眼前的工作做到最好。似乎敏

捷是有意在回避预测,而实际上的原因是敏捷不惧怕改变,。Kent Beck就这个问题专门有写到:“只有在你

正真需要的时候才去做”,敏捷提倡的“适应”,迭代开发可以很方便的改变原来的主意,在这个前提下预测

是多余和危险的,由预测所产生的内容在面对改变的时候,代价是昂贵的!

refactor:目的是提高代码的质量,使项目在细节上面得到优化,其实这里的概念还比较模糊,什么是高质

量的代码呢,如CodeComplete所述,不同性质的项目有不同的判定标准,是小型的桌面应用,一般的商用软

件还是性命攸关的核心控制程序。这需要在稳定,可扩展,易修改等特性中寻求最佳。当然前提是代码简

单易懂。

test:代码要易于测试,什么样的代码才容易测试呢,当然是以测试为前提写出来的代码。Test-Driven Development说得就是

“测试先行”,简单说来就是,先写一个测试程序,定义通过和失败的判断标准,然后以定义的通过标准为目标,实现product

code.除了是porduct代码容易测试外,TDD还有助于你充分理解你的设计,试想若你对要实现的功能不明确,又如何能写出测

试程序呢?

pair-programming:存在有不少的争议,多数的反对意见是效率不高。XP关于Pair-Programming的描述:

All code to be included in a production release is created by two people working together at a single computer. Pair programming increases software quality without impacting time to deliver. It is counter intuitive, but 2 people working at a single computer will add as much functionality as two working separately except that it will be much higher in quality. With increased quality comes big savings later in the project.

很明显,是为了提高代码质量,避免潜在的错误和不当设计,因为在这个过程中其同时发生的还有Walkthrough和Inspection等

活动。另外两个人一起工作,偷懒的可能性大幅减少而且解决问题的能力会加强,而且大量实践证明,pair-programming是提

高软件质量和减少开发时间的有效方法,当然,前提是合理的利用。

www.xprogramming.com/index.htm

www.extremeprogramming.org/index.html
分享到:
评论

相关推荐

    xplite_trial

    that are released on an almost daily basis testify to this fact. You can choose alternate technologies to avoid the security risks, yet the flawed components remain on your system unused, until the ...

    软件工程英文教学课件:Ch3-Agile-Development.pptx

    Stories are prioritized and estimated, forming the basis for the development schedule. XP also includes practices such as test-driven development, continuous integration, and pair programming to ...

    深入浅出WinAC

    WinAC基本型(WinAC Basis)是一种低成本解决方案,适用于对控制无精确时间要求的场合,可以实现大量、快速的数据处理与控制任务的结合,或与其他PC任务一起控制。WinAC PN是第一个支持PROFInet通讯标准的SIMATIC ...

    WinAC中文手册

    3. **WinAC RTX (WinAC实时型)**:具备Windows 2000/XP操作系统下的实时子系统,提供“硬实时”和“抗死机”特性,适合需要高速及精确时间控制的任务,如运动控制和闭环控制等。 4. **WinAC MP**:基于WinCE操作系统...

    PDF_To_JPG[无水印]

    Supports all Windows platforms, 95/98/ME/NT/2000/XP Support PDF 1.6 (formerly only supported by Acrobat 7.0) Support run from command line. Supprt True type,type 1, type 0 and CID font. Use ...

    RegCure 免费版

    If you are using Vista or Windows XP, there are two ways for you to protect against accidents: system restore points and backup files. Meanwhile, if you are using Windows 2000 (SP4), Windows 98 (SE) ...

    深入浅出WinAC.pdf

    - **WinAC RTX (WinAC实时型)**:提供了Windows 2000/XP下的实时子系统,具有硬实时特性和抗死机特性,适用于高速和精确时间要求的控制任务,如运动控制、闭环控制等。 - **WinAC MP**:基于WinCE操作系统和...

    网络修复winsrepair

    Rizone Technologies ("Rizone") is making this software freely available on the basis that it is accepted as found and that the user checks its fitness for purpose prior to use. This software is ...

    西门子S7PLCSIM仿真软件的使用范围与安装西门子plc.docx

    但在 STEP7 Basis V5.2 标准版软件中,需要另行安装 S7-PLCSIM 软件。对于使用标准版软件的用户来说,S7-PLCSIM 是 STEP7 的选件,用户需要得到相应的使用授权。 S7-PLCSIM 的安装过程格外简洁,只需要依据安装向导...

    DebugFactory3.zip

    When compiling simply on a trial basis, the trial-version compiler incorporated in DebugFactory can be used. DebugFactory can create a make file automatically. It is also possible to perform ...

    clucene源码

    on a Pentium 4 running Windows XP with 1 GB of RAM. Indexing max 100,000 fields ?Jlucene: 646453ms. peak mem usage ~72mb, avg ~14mb ram ?Clucene: 232141. peak mem usage ~60, avg ~4mb ram Searching ...

    TINA 9.0使用教程

    “asis” basis, without warranty of any kind DesignSoft, Inc, its distributors, and dealers make no warranty, either expressed, implied, or statutory, including but not limited to any implied ...

Global site tag (gtag.js) - Google Analytics