Extreme Programming and Agile Development
今天学习了软件开发过程一种轻量极方法论------极限编程(XP),颇有收获。我觉得需要把这种极限编程的思想贯穿到整个开发过程,注入到每个开发成员的开发理念中去。同时我认为做为一程序员,不是简简单单地只为写程序,他需要在开发的过程中不断地去...
今天学习了软件开发过程一种轻量极方法论------极限编程(XP),颇有收获。我觉得需要把这种极限编程的思想贯穿到整个开发过程,注入到每个开发成员的开发理念中去。同时我认为做为一程序员,不是简简单单地只为写程序,他需要在开发的过程中不断地去吸纳这种开发思想,开发理念,开发过程之后并不是他熟练了JAVA或C++或Python去写程序,而是他有了自己的一套开发思想和开发理念。(那么说到另一个问题,他下一次用到Python或C又有什么区别呢?)
极限编程(Extreme Programming)
Kent Beck 提出极限编程XP的四个核心:沟通(Communication)、简单(Simplicity)、反馈(Feedback)和勇气(Courage)。
提出XP的十二种方法:规划策略(The Planning Game),结对编程(Pair programming),测试(Testing),重构(Refractoring),简单设计(Simple Design),代码集体所有权(Collective Code Ownership),持续集成(Continuous Integration),现场客户(On-site Customer),小型发布(Small Release),每周40小时工作制(40-hour Week),编码规范(Code Standards),系统隐喻(System Metaphor)
敏捷开发(Agile Development)
- 个体和交互 胜过 过程和工具
- 可以工作的软件 胜过 面面俱到的文档
- 客户合作 胜过 合同谈判
- 响应变化 胜过 遵循计划